ここから本文です

2桁までのフィボナッチ風数列の周期を求めてください。 F(n+2) ≡ F(n+1) + F(n) (...

bqbsg659さん

2010/10/2417:01:00

2桁までのフィボナッチ風数列の周期を求めてください。
F(n+2) ≡ F(n+1) + F(n) (mod 100), F(1) = F(2) = 1
F(n) < 100

F(149) = 49, F(150) = 0

が分かっているとします。

自分の考え方があっているか知りたいので、よろしくお願いします。

こんな条件がなくても解く方法はあるのでしょうか?
(もちろん順に出していくのではなくて)

閲覧数:
238
回答数:
2
お礼:
250枚

違反報告

ベストアンサーに選ばれた回答

Highflyerさん

2010/10/2500:52:07

下2桁をmod4で考えれば
01,01,02,03,01,00,・・・
の周期6となります.
同様にmod25で考えれば
01,01,02,03,05,08,13,21,09,05,14,19,08,02,10,12,22,09,06,15,21,11,07,18,00,
18,18・・・
と続きます.18^2≡-1(mod25)ですので,51番目からが24,24,・・・と続き,101番目からが01,01・・・と続きますので周期が100となります.
ですからフィボナッチ数列をmod100で見た,下2桁の循環は6と100の最小公倍数である300で循環します.

k≧3であれば,下k桁の周期は1.5×10^kになります.

質問した人からのコメント

2010/10/25 06:16:47

降参 お二方ともありがとうございました。

色々なアイデアを教えてもらえるのはとても刺激的で、本当に有り難いです。
これからも宜しくお願いしますm(__)m
1.5*10^k ? 考えてみます。
簡単なんですかね~?

最近合同式の威力ってすごいと感じています。
高校で習わないのはなぜ?

このQ&Aで解決しましたか?質問する

閉じる

ベストアンサー以外の回答

1〜1件/1件中

yao********さん

2010/10/2423:38:32

F(149)=49,F(150)=0

mod 50 で考えると,以後
-1,-1,…,F(299)=-49=1,F(300)=0
ゆえに,mod 50 では周期300 がわかりますね。

mod 100 も周期300といっていいのでしょうか?

-------------------------------------
ところで,150番目までは計算したということでしょうね。
もっと少なくてすみます。

mod 4 で計算すると
1,1,2,3,1,0
ゆえに周期は6

mod 25 で計算すると
…,F(49)=24=-1,F(50)=0
ゆえに周期は100

mod 100 の周期は,6 と 100 の最小公倍数で 300

この質問につけられたタグ

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

[PR]お得情報

CMで話題のふるさと納税サイトさとふる
毎日お礼品ランキング更新中!
2019年のふるさと納税は≪12/31まで≫

その他のキャンペーン

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる