Lassen Sie uns eine einfache, surjektive Zuordnung von positiven Ganzzahlen zu Gaußschen Ganzzahlen erstellen , bei denen es sich um komplexe Zahlen handelt, bei denen der Real- und Imaginärteil Ganzzahlen sind.
Wenn Sie zum Beispiel eine positive Ganzzahl haben 4538
, drücken Sie sie in Binärform ohne führende 0
Zeichen aus:
4538 base 10 = 1000110111010 base 2
Entfernen Sie alle folgenden 0
Elemente:
100011011101
Ersetzen Sie alle Läufe von einem oder mehreren 0
durch einen einzigen +
:
1+11+111+1
Ersetzen Sie alle 1
durch i
's:
i+ii+iii+i
Bewerten Sie den resultierenden komplexen Ausdruck und geben Sie die vereinfachte Gaußsche Ganzzahl aus:
i+ii+iii+i = i+i*i+i*i*i+i = 2i+i^2+i^3 = 2i+(-1)+(-i) = -1+i
Die Ausgabe kann auf herkömmliche mathematische Weise ausgedrückt oder als zwei separate Ganzzahlen für den Realteil und den komplexen Teil angegeben werden. Für das 4538
Beispiel wäre eines dieser Beispiele in Ordnung:
-1+i
i-1
-1+1i
(-1, 1)
-1 1
-1\n1
Für Eingänge , wie 29
, mathy formatiert Ausgänge wie 0
, 0i
oder 0+0i
sind alle in Ordnung.
Verwenden j
(oder etwas anderes) anstelle von i
ist in Ordnung, wenn dies für Ihre Sprache natürlicher ist.
Der kürzeste Code in Bytes gewinnt.
4+2j
->100+10j
...