To nie ma praktycznego celu, ale golf może być świetną zabawą.
Wyzwanie
Biorąc pod uwagę liczbę n ,
- Policzyć ilość każdej cyfry w n i dodać 1 do każdej liczby
- Weźmy pierwszą faktoryzację n
- Policz liczbę każdej cyfry w rozkładzie na czynniki pierwsze n , bez uwzględnienia podwójnych liczb pierwszych
- Utwórz nową listę, mnożąc odpowiednie elementy list z kroków 1 i 3
- Zwraca sumę tej listy
Na przykład 121 ma dwa 1
si a 2
, więc w kroku 1 uzyskasz następującą listę:
0 1 2 3 4 5 6 7 8 9
1 3 2 1 1 1 1 1 1 1
Pierwotna faktoryzacja 121 wynosi 11 2 , co daje następującą listę dla kroku 3:
0 1 2 3 4 5 6 7 8 9
0 2 0 0 0 0 0 0 0 0
Zwróć uwagę, że nie policzyliśmy wykładnika. Mnożą się one razem, aby uzyskać:
0 1 2 3 4 5 6 7 8 9
0 6 0 0 0 0 0 0 0 0
A suma tej listy wynosi 6.
Przypadki testowe
1 -> 0
2 -> 2
3 -> 2
4 -> 1
5 -> 2
10 -> 2
13 -> 4
121 -> 6
Notatki
- Standardowe luki są zabronione.
- Dane wejściowe i wyjściowe mogą być w dowolnym rozsądnym formacie.
- Powinieneś zostawić jedynki (lub zera dla kroku 3) na liście dla cyfr, które nie pojawiły się w numerze.
- To jest golf golfowy , więc wygrywa najkrótsze rozwiązanie w bajtach.
232792560
-> [2,1,4,2,1,2,2,2,1,2]
(krok 1); 2*2*2*2*3*3*5*7*14*17*19
(krok 2); tak [0,5,1,2,0,1,0,2,0,1]
(krok 3); następnie [0,5,4,4,0,2,0,4,0,2]
(krok 4); i dlatego powinien generować 21
.