Interi di Gauss sono numeri complessi della forma a+bi
in cui a
e b
sono entrambi interi. Nella base -1 + i, tutti i numeri interi gaussiani possono essere rappresentati in modo univoco usando le cifre 0
e 1
, senza la necessità di un simbolo per indicare il segno.
Ad esempio, 1100
nella base -1 + i rappresenta il numero decimale 2, poiché
1*(-1+i)^3 + 1*(-1+i)^2 + 0*(-1+i)^1 + 0*(-1+i)^0
= (2+2i) + (-2i) + 0 + 0
= 2
L'input sarà due numeri interi gaussiani in base -1 + i rappresentati usando le cifre 01
. Questo può assumere una delle seguenti forme:
- Due stringhe di cifre separate,
- Due numeri decimali consistenti nel
01
rappresentare i numeri base -1 + i (ad es.1100
Per 2 nella base -1 + i), - Due numeri interi binari che rappresentano i numeri base -1 + i (ad es. Decimale
12
o0b1100
per 2 nella base -1 + i) - Una singola stringa che separa stringhe a due cifre / numeri interi binari da un singolo separatore non alfanumerico (ad es.
1100 1100
O12,12
per 2 + 2)
Emette la somma dei due numeri interi gaussiani, anch'essi in base -1 + i e rappresentati usando le cifre 01
(in uno dei formati consentiti come input, non necessariamente la stessa scelta). L'output può contenere un numero finito di zeri iniziali.
La funzione o il programma deve terminare entro 2 secondi per gli input di massimo 30 cifre ciascuno.
Ulteriori chiarimenti
- Si può presumere che l'ingresso non contenga zero iniziali estranei. Per il caso speciale di 0, è possibile scegliere una
0
delle stringhe vuote come rappresentazione.
Casi test
0, 0 => 0 # 0 + 0 = 0
0, 1 => 1 # 0 + 1 = 1
1, 1 => 1100 # 1 + 1 = 2
1100, 1100 => 111010000 # 2 + 2 = 4
1101, 1101 => 111011100 # 3 + 3 = 6
110111001100, 1110011011100 => 0 # 42 + (-42) = 0
11, 111 => 0 # i + (-i) = 0
11, 110 => 11101 # i + (-1-i) = -1
10101, 11011 => 10010 # (-3-2i) + (-2+3i) = (-5+i)
1010100101, 111101 => 1110100000100 # (-19+2i) + (3-4i) = (-16-2i)
Casi di prova più lunghi:
11011011010110101110010001001, 111100010100101001001010010101 => 0
111111111111111111111111111111, 111111111111111111111111111111 => 100100100100100100100100100100
101101110111011101110111011101, 101101110111011101110111011101 => 11101001010001000100010001000100011100
100100010101001101010110101010, 100010011101001011111110101000 => 110000110010101100001100111100010
-1+i
in i-1
nel titolo.