No.8038 フィボナッチ数列の周期
問題文最終更新日: 2025-03-04 09:55:51
問題文
により定められる数列をフィボナッチ数列という。
フィボナッチ数列のでの周期をで割った余りを求めよ。
入力
N p_1 k_1 ... p_N k_N
は素因数分解された形で与えられ、である。
:整数
:素数であり、相異なる
:整数
テストケースは全部で25個ある。
1smallから始まる7つのテストケースはを満たす(★2くらい)
2medから始まる9つのテストケースはかつ全てのについてを満たす(★3くらい)
3largeから始まる9つのテストケースには追加制約はない(★4くらい)
出力
フィボナッチ数列のでの周期をで割った余りを出力せよ。
ただし、「フィボナッチ数列のでの周期」とは次の条件を満たすような正整数のうち最小のものを指す。
条件:ある非負整数が存在して、以上の任意の整数に対してが成り立つ
サンプル
サンプル1
入力
2 2 2 3 1
出力
24
である。OEISのA001175によると、mod 12での周期は24になるらしい。
実際に計算するととなり確かにとなっている。
このケースはsmallの追加制約を満たす。
サンプル2
入力
2 97 1 103093 1
出力
10103212
mod 10^7+21での周期は10103212になるらしい。
このケースはmedの追加制約を満たす。
サンプル3
入力
2 9999937 2 9999761 2
出力
650542141
mod 9999396012131709055946713249における周期は96148038578019322985423540になるらしい。
提出するには、Twitter 、GitHub、 Googleもしくは右上の雲マークをクリックしてアカウントを作成してください。