TopCoder Inv 2001 R1 - SquareDigits
資訊
- 路徑:Tournament \ 1-16 \ 1 - Inv 2001 R1 \ SquareDigits
- 分數:500
題目
程式介面
1 | Class Name: SquareDigits |
說明
輸入一數字 n,找到 T(x) 包含 n 的最小 x。
定義
S(x):表示 x 的數字逐字幕次和,例如 S(3) = 3 * 3 = 9 和 S(230) = 2 * 2 + 3 * 3 + 0 * 0 = 13。
T(x):表示重複執行 S(x) 直到出現重複結果,例如 T(37),
S(37) = 58
S(58) = 89
S(89) = 145
S(145) = 42
S(42) = 20
S(20) = 4
S(4) = 16
S(16) = 37
S(37) <- 重複
T(37) = { 58, 89, 145, 42, 20, 4, 16, 37 }
系統保證輸入
- 0 - 199
範例
1 | 輸入:0 |
解法
此題目明確的說明了 S(x) 和 T(x) 的演算法,所以很容易就能寫出對應的函式,此題目沒有特別需要注意的地方。
語法
採用較易理解的寫法,效能並非最好
1 | using System; |
延伸閱讀
上一題 TopCoder Inv 2001 R1 - HowEasy
下一題 TopCoder Inv 2001 R1 - Prerequisites
TopCoder - 線上程式設計競賽
本部落格所有文章除特別聲明外,均採用 CC BY-NC-SA 4.0 許可協議。轉載請註明來自 小殘的程式光廊!
Comment