Myślę, że hipoteza Collatza jest już dobrze znana. Ale co, jeśli odwrócimy zasady?
Zacznij od liczby całkowitej n> = 1.
Powtórz następujące kroki:
Jeśli n jest parzyste , pomnóż go przez 3 i dodaj 1.
Jeśli n jest nieparzyste , odejmij 1 i podziel ją przez 2.
Zatrzymaj się, gdy osiągnie 0
Wydrukuj iterowane liczby.
Przypadki testowe:
1 => 1, 0
2 => 2, 7, 3, 1, 0
3 => 3, 1, 0
10 => 10, 31, 15, 7, 3...
14 => 14, 43, 21, 10, ...
Zasady:
Ta sekwencja nie działa dla wielu liczb, ponieważ wchodzi w nieskończoną pętlę. Nie musisz zajmować się tymi sprawami. Wystarczy wydrukować powyższe przypadki testowe.
Zasugerowałem, aby odjąć 1 i podzielić przez dwa, aby podać prawidłową liczbę całkowitą, aby kontynuować, ale nie jest konieczne obliczanie w ten sposób. Możesz podzielić przez 2 i rzutować na liczbę całkowitą lub dowolną inną metodę, która da oczekiwany wynik.
Musisz również wydrukować początkowe dane wejściowe.
Dane wyjściowe nie muszą być sformatowane jako przypadki testowe. To była tylko sugestia. Jednak kolejność iterowana musi być przestrzegana.
Najmniejszy kod wygrywa.
0
na końcu?