Problem 100
コンテンツ
http://projecteuler.net/index.php?section=problems&id=218
ついに100問。
に対して
とすると
のpell equationに。
ところで、pell equationの解は最小の解から順に生成できるみたいだけど
なんで?はじめの解をn乗しても解なのはわかるけど
間に解がないってのがなー
import Data.List naive m = [(n,d)|d<-[1..m],n<-[div d 2..d],2*n*(n-1)==d*(d-1)] next (x,y) = (3*x+4*y,2*x+3*y) toDisc (x,y) = ((y+1)`div`2,(x+1)`div`2) p100 = map toDisc.iterate next $ (1,1) main = print.find ((>10^12).snd)$p100
作成者 Toru Mano
最終更新時刻 2023-01-01 (c70d5a1)