google code jam今天早上比了第一場
看了一下第三題
問題是 3 + 5^0.5 取n次方後 求整數前三位數字
看起來很簡單 但一看就知道是誤差問題
看到解出來的人的解答 真的突然覺得自己數學變好差
早知道平常應該繼續唸的
這題n取很大時會有誤差 所以不能硬幹
使用數學方法 設:
3 + 5^0.5 = x
5 = x^2 - 6x + 9
0 = x^2 - 6x + 4
根據n對公式取次方
最後再解方程
這樣誤差就消失了