Tôi nghĩ rằng phỏng đoán Collatz đã nổi tiếng. Nhưng nếu chúng ta đảo ngược các quy tắc thì sao?
Bắt đầu với số nguyên n> = 1.
Lặp lại các bước sau:
Nếu n chẵn , nhân nó với 3 và thêm 1.
Nếu n là số lẻ , trừ 1 và chia cho 2.
Dừng lại khi nó về 0
In các số lặp.
Các trường hợp thử nghiệm:
1 => 1, 0
2 => 2, 7, 3, 1, 0
3 => 3, 1, 0
10 => 10, 31, 15, 7, 3...
14 => 14, 43, 21, 10, ...
Quy tắc:
Chuỗi này không hoạt động cho nhiều số vì nó đi vào một vòng lặp vô hạn. Bạn không cần phải xử lý những trường hợp đó. Chỉ in các trường hợp thử nghiệm ở trên là đủ.
Tôi đề nghị trừ đi 1 và chia cho hai để đưa ra một số nguyên hợp lệ để tiếp tục, nhưng không bắt buộc phải tính theo cách đó. Bạn có thể chia cho 2 và chuyển thành số nguyên hoặc bất kỳ phương thức nào khác sẽ cho đầu ra dự kiến.
Bạn cần phải in đầu vào ban đầu là tốt.
Đầu ra không cần phải được định dạng như các trường hợp thử nghiệm. Nó đã chỉ là một sự gợi ý thôi mà. Tuy nhiên, thứ tự lặp phải được tôn trọng.
Mã nhỏ nhất sẽ thắng.
0
cuối cùng không?