Zastanów się nad liczbą 99999999. Liczba ta jest oczywiście palindromem. Największy czynnik pierwszy wynoszący 99999999 wynosi 137. Jeśli podzielisz 99999999 przez 137, otrzymasz 729927. Liczba ta jest również palindromem.
Największy czynnik pierwszy wynoszący 729927 wynosi 101. 729927/101 = 7227, co znowu jest palindromem.
Największy czynnik pierwszy wynoszący 7227 wynosi 73. 7227/73 = 99, co znowu jest palindromem.
Przez dalsze dzielenie przez największy czynnik pierwszy, otrzymujesz 9, 3 i ostatecznie 1, które, będąc liczbami jednocyfrowymi, są również palindromami. Ponieważ 1 nie ma czynników pierwszych, procedura kończy się tutaj.
Teraz uogólniając to spostrzeżenie, definiuję super-palindrom jako palindrom, który ma wartość 1 lub daje inny super-palindrom, jeśli jest podzielony przez jego największy czynnik pierwszy.
Kredyty: /math/200835/are-there-infinitely-many-super-palindromes
Biorąc pod uwagę liczbę N , określ, czy jest to superpalindrom, czy nie, i wydrukuj odpowiednio wartość prawdy lub falseya.
Twój program powinien wydrukować prawdziwą wartość dla tych danych wejściowych:
1
101
121
282
313
353
373
393
474
737
919
959
1331
1441
2882
6446
7887
8668
9559
9779
Twój program powinien wydrukować wartość falsey dla tych danych wejściowych:
323
432
555
583
585
646
642
696
777
969
989
2112
3553
4554
5242
5225
5445
8080
8118
9988
Pamiętaj, że to jest gra w golfa , więc wygrywa kod z najmniejszą ilością bajtów.
N
zawsze będą palindromem na początek?