„Główna żaba” to dziwne zwierzę, które przeskakuje między liczbami całkowitymi, aż dotrze 3 lub 19 ...
Twój program powinien przyjmować liczbę całkowitą n
jako dane wejściowe i wyjściowe wyniku poniższego algorytmu ( 3
lub 19
).
Dla danej liczby całkowitej n >= 2
:
- Niech
f
będzie pozycja żaby. Początkowo jest ustawiony nan
- if
f = 3
lubf = 19
: żaba przestaje skakać - zatrzymać program i wyjścief
. - if
f
jest liczbą pierwszą: żaba skacze na pozycję2×f-1
. Wróć do kroku 2. - jeśli
f
jest mieszany: niechd
będzief
„s największym prime dzielnik. Żaba skacze na pozycjęf-d
. Wróć do kroku 2.
Przykłady:
Przykład z n = 5
:
5 > 9 > 6 > 3 stop
Program powinien wyjść 3
.
Kolejny przykład z n = 23
:
23 > 45 > 40 > 35 > 28 > 21 > 14 > 7 > 13 > 25 > 20 > 15 > 10 > 5 > 9 > 6 > 3 stop
Ponownie program powinien wypisać dane 3
.
Przypadki testowe:
10 => 3
74 => 19
94 => 3
417 => 3
991 => 19
9983 => 19
Możesz założyć 1 < n < 1000000
(sprawdziłem końce programu pod kątem tych wartości).
3
lub 19
, możemy zmienić pozycję 2. w algorytmie, aby powiedzieć, że jeśli żaba weszła w jakąkolwiek pętlę (napotkała pozycję, którą widział wcześniej), wówczas zatrzymuje skok i zwraca najmniejszą członek tej pętli.