Widziałem kolejne główne wyzwanie w PPCG i bardzo mi się podobają. Potem źle przeczytałem tekst wprowadzający i zastanawiałem się, co wymyślili tutaj twórczy mózg.
Okazuje się, że postawione pytanie było trywialne, ale zastanawiam się, czy to samo dotyczy pytania, które (źle) przeczytałem:
6 może być reprezentowane przez 2 ^ 1 * 3 ^ 1, a 50 może być reprezentowane przez 2 ^ 1 * 5 ^ 2 (gdzie ^ oznacza eksponencję).
Twoje zadanie:
Napisz program lub funkcję, aby określić, ile różnych liczb pierwszych znajduje się w tej reprezentacji liczby.
Wejście:
Liczba całkowita n taka, że 1 <n <10 ^ 12, przyjęta dowolną normalną metodą.
Wynik:
Liczba różnych liczb pierwszych wymaganych do reprezentowania unikalnych czynników pierwszych n.
Przypadki testowe:
Input Factorisation Unique primes in factorisation representation
24 2^3*3^1 2 (2, 3)
126 2^1*3^2*7^1 3 (2, 3, 7)
8 2^3 2 (2, 3)
64 2^6 1 (2) (6 doesn't get factorised further)
72 2^3*3^2 2 (2, 3)
8640 2^6*3^3*5^1 3 (2, 3, 5)
317011968 2^11*3^5*7^2*13^1 6 (2, 3, 5, 7, 11, 13)
27 3^3 1 (3)
To nie jest sekwencja OEIS.
Punktacja:
To jest golf-golf, najniższy wynik w bajtach wygrywa!
64
oczekiwanego wyniku wynosi 1 (2). Podoba mi się pomysł robienia tego rekurencyjnie, ale nie w ten sposób czytam oryginalne pytanie. Myślałem, że 8640
to odpowiedni przypadek testowy, ale powinien być bardziej precyzyjny - dzięki.
64
? Czy to2 (2,3)
(jako 6 można przedstawić jako 2 * 3) czy1 (2)
(zignorować 6)?