主題

ZeroJudge - a240: 第一題:1 / 17 小數第 n 位 解題心得

Not In My Back Yard | 2021-02-04 20:23:28

題目連結:


題目大意:
輸入第一列給定一正整數 m (1 ≦ m ≦ 5),代表有 m 筆測試資料,每筆佔一列。每列給定一正整數 n ,試問 1 ÷ 17 的小數點後第 n 位為多少、從小數點第 1 位加到第 n 位之值又是多少?



範例輸入:
2
3
5


範例輸出:
8 13
2 23


解題思維:
1 ÷ 17 為
0.05882352941176470588……
其以小數點後的前十六位作為循環節一直循環下去。

因此我們只需要前十六位便可以算出所求的第 n 位之值,也可以算出第 1 位到第 n 位總和為多少(先算經過幾次循環,每一次會加 72,剩下不完整的循環段再自行加總)。



題外話:
循環小數 a / b 有一個性質——其循環節長度必不超過 b - 1 位長。相關說明可以參見維基頁面




此次分享到此為止,如有任何更加簡潔的想法或是有說明不清楚之地方,也煩請各位大大撥冗討論。
50 巴幣: 0

創作回應

相關創作

更多創作