Liczba całkowita Gaussa jest liczbą zespoloną, której rzeczywistą i urojoną częścią są liczby całkowite.
Liczby całkowite Gaussa, podobnie jak zwykłe liczby całkowite, można przedstawić w unikalny sposób jako iloczyn liczb pierwszych Gaussa. Wyzwaniem jest tutaj obliczenie głównych składników danej liczby całkowitej Gaussa.
Dane wejściowe: liczba całkowita Gaussa, która nie jest równa 0 i nie jest jednostką (tzn. 1, -1, i oraz -i nie mogą być podawane jako dane wejściowe). Użyj dowolnego rozsądnego formatu, na przykład:
- 4-5i
- -5 * j + 4
- (4, -5)
Dane wyjściowe: lista liczb całkowitych Gaussa, które są liczbą pierwszą (tzn. Żadnej z nich nie można przedstawić jako iloczynu dwóch niejednostkowych liczb całkowitych Gaussa), i których iloczyn jest równy liczbie wejściowej. Wszystkie liczby na liście wyjściowej muszą być nietrywialne, tzn. Nie 1, -1, i lub -i. Można zastosować dowolny rozsądny format wyjściowy; niekoniecznie powinien być taki sam jak format wejściowy.
Jeśli lista wyjściowa zawiera więcej niż 1 element, wówczas możliwych jest kilka poprawnych wyników. Na przykład dla wejścia 9 wyjściem może być [3, 3] lub [-3, -3] lub [3i, -3i] lub [-3i, 3i].
Przypadki testowe (wzięte z tej tabeli ; 2 wiersze na przypadek testowy)
2
1+i, 1-i
3i
3i
256
1+i,1+i,1+i,1+i,1+i,1+i,1+i,1+i,1+i,1+i,1+i,1+i,1+i,1+i,1+i,1+i
7+9i
1+i,2−i,3+2i
27+15i
1+i,3,7−2i
6840+585i
-1-2i, 1+4i, 2+i, 3, 3, 6+i, 6+i
Wbudowane funkcje faktorowania liczb całkowitych Gaussa są niedozwolone. Dozwolone jest jednak uwzględnianie zwykłych liczb całkowitych według wbudowanych funkcji.
3i
jest poprawną odpowiedzią, ponieważ i
nie jest liczbą pierwszą. Zaktualizowałem przypadek testowy, aby był bardziej przejrzysty.
256=(1+i)**16
nie (1+i)**8
dlatego 256=2**8=(2i)**8
i2i=(1+i)**2
3i
wrócić jak3,i
, lub3i
?