連分数(continued fraction)は、
の形の分数のことを普通は扱うようです。しかし、分子が1でないものも連分数と呼びます。
連分数の略記法
上の連分数は、しばしば
[a0; a1, a2, ...]
と略記されます。
連分数の作り方
例えば、√3を連分数で表してみましょう。まず、これを超えない最大の整数は1です。これを引いてその逆数を取ると、1.366025…。これを超えない最大の整数は1。1を引いて逆数を取ると、2.732051…。これを超えない最大の整数は2。2を引いて逆数を取ると、1.366025…。循環しましたね。正確に計算すると、
1/(√3 - 1) = (√3+1)/2
1/( (√3+1)/2 - 1) = √3+1
1/(√3+1 - 2) = (√3+1)/2
…
このように循環します。よって、
√3 = [1;1,2,1,2,...]
循環しないものも同様にanを求めることができます。
連分数の計算法
pn / qn = [a0; a1, a2, ..., an]
とすると、
p0 = a0
q0 = 1
p1 = a0a1 + 1
q1 = a1
また、
pn = an-1pn-1 + pn-2
qn = an-1qn-1 + qn-2
(n ≥ 2)
これは数学的帰納法で簡単に確認できます。
pn+1 = anpn + pn-1
qn+1 = anqn + qn-1
Project Eulerに必要な用語集
http://d.hatena.ne.jp/inamori/20091225/p1