『ユークリッドの互除法の効率』解答


◆東京都 かえる さんからの解答。

【問題1】

89と55  9回

【問題2】

フィボナッチ数列
n+2=an+1+an,a1=a2=1
の一般項を求めれば、
 an

(( 1+
n−( 1−
n

(( 1+
n
(∵絶対値| 1−
|<1)

Nに含まれる最大のフィボナッチ数列がanのとき、
nとan-1を選んで、求める割り算の回数の最大値は、(n−2)回になるので、
求める割り算の回数の最大値は、

 ・・・【答】

[ ]はガウス記号


◆出題者のコメント。

かえるさん、ありがとうございます。

log( 1+
)÷log(10) ≒ 0.2 なので、
10桁の数字なら、せいぜい50回程度の割り算で、最大公約数が 求まる事が保証されているので、随分早いなぁ、と感心しました。
当たり前といえば当たり前なのですが、互除法で、商が 1 になる場合は、フィボナッチ数列の逆になっている点が、面白くて出題しました。


 『ユークリッドの互除法の効率』へ

 数学の部屋へもどる