把一個數倒過來寫若和原數一樣,就稱為迴文數,例如:
101、121、919、2002、2112、1230321...
關於迴文數有趣的是,我們隨便取一個數(比如 78),拿它去和它逆序翻轉後形成的新數(87)相加,
所得的數再和它逆序翻轉後形成的新數相加,如此循環下去,猜猜結果會怎樣?好像會得到一個迴文數:
78+87=165 → 165+561=726 → 726+627=1353 → 1353+3531=4884(迴文數)
再舉一例:
從 1169 開始:
1169+9611=10780 → 10780+08701=19481 → 19481+18491=37972 →
37972+27973=65945 → 65945+54956=120901 → 120901+109021=229922(迴文數)
請你設計一個程式,輸入 2 位數以上的任意正整數 $n$,計算依照上述方法,要加幾次才會得到迴文數,
若超過 5,000 次還無法得到迴文數,則輸出 "no"(不含雙引號)。
第一行有一個數字:$n$,代表一開始的數字。
請輸出一個數字:$k$,代表依照題目所述方法,需要加 $k$ 次才能得到回文數。
若無法在 5,000 次內達成,請輸出 "no"(不含雙引號)。
對於所有測試資料,$10 \le n < 10 ^ 9$。
2024/07/23 Update: Added $\LaTeX$ and reformatted by FHVirus
原TIOJ1650 / 98建中校內資訊能力競賽(prob2)
No. | Testdata Range | Score |
---|---|---|
1 | 0 | 10 |
2 | 1 | 10 |
3 | 2 | 10 |
4 | 3 | 10 |
5 | 4 | 10 |
6 | 5 | 10 |
7 | 6 | 10 |
8 | 7 | 10 |
9 | 8 | 10 |
10 | 9 | 10 |