CSES 1068 - Weird Algorithm
1.0s 512M考慮一個以正整數 \(n\) 當作輸入的演算法。若 \(n\) 是偶數,演算法就把它除以二;若 \(n\) 是奇數,演算法就把它乘以三再加一。演算法不斷重複這件事,直到 \(n\) 變成一。舉例來說,\(n=3\) 時的數列如下:
\[3 \rightarrow 10 \rightarrow 5 \rightarrow 16 \rightarrow 8 \rightarrow 4 \rightarrow 2 \rightarrow 1\]你的任務是對給定的 \(n\) 模擬這個演算法的執行過程。
輸入格式
唯一一行輸入包含一個整數 \(n\)。
輸出格式
輸出一行,包含演算法執行過程中 \(n\) 的所有值。
範例輸入 1
3
範例輸出 1
3 10 5 16 8 4 2 1
限制
- \(1 \le n \le 10^6\)
題目來源
題目來自 CSES Problem Set(Antti Laaksonen),授權 CC BY-NC-SA 4.0;本頁為翻譯,以相同授權分享。
登入後即可撰寫程式並提交評測。
登入