Bajtazar przechadzał się koło Biblioteki Uniwersyteckiej w Warszawie i na jednej z fasad zobaczył fragment programu opatrzony pytaniem "Czy się zatrzyma?". Problem wyglądał intrygująco, dlatego Bajtazar postanowił zająć się nim po powrocie do domu. Niestety, gdy zapisywał kod na kartce, popełnił błąd i zanotował:
while n > 1
if n mod 2 = 0 then
n:=n/2
else
n:=3*n+3
Bajtazar próbuje teraz ustalić, dla jakich wartości początkowych zmiennej
zapisany przez niego program zatrzyma się.
Zakładamy przy tym, że zmienna
ma nieograniczony rozmiar, tj. może przyjmować dowolnie duże wartości.
Pierwszy i jedyny wiersz wejścia zawiera jedną liczbę całkowitą
(
), dla której
należy sprawdzić, czy podany program zatrzyma się.
W pierwszym i jedynym wierszu wyjścia Twój program powinien wypisać jedno słowo TAK, jeśli
program zatrzyma się dla podanej wartości
, lub NIE w przeciwnym przypadku.
Dla danych wejściowych:
4
poprawną odpowiedzią jest:
TAK
Autor zadania: Jakub Łącki.
W razie problemów technicznych ze Szkopułem, prosimy o kontakt mailowy pod adresem szkopul@fri.edu.pl.
Jeśli chciałbyś porozmawiać o zadaniach, rozwiązaniach lub problemach technicznych, odwiedź nasze serwery na Discordzie. Są one moderowane przez społeczność, ale członkowie zespołu wsparcia również aktywnie się tam udzielają.