Luogu P1962 斐波那契數列

2021-08-19 08:46:56 字數 561 閱讀 4673

大家都知道,斐波那契數列是滿足如下性質的乙個數列:

• f(1) = 1

• f(2) = 1

• f(n) = f(n-1) + f(n-2) (n ≥ 2 且 n 為整數)

求出 f(n) mod 1000000007 的值。

對於 60% 的資料: n ≤ 92

對於 100% 的資料: n在long long(int64)範圍內。

一道矩陣乘法的模版題..

某dalao的分析:

#include

#define modn 1000000007

long

long a[2][2]=,};

long

long f[2]=,n;

using

namespace

std;

void mul()

void mulself()

int main()

printf("%lld\n",f[0]);

return

0;}

LUOGU P1962 斐波那契數列

求斐波那契第n項。f n 1 f n 0,1 f n f n 1 1,1 由此原理,根據矩陣乘法的結合律,用快速冪算出中間那個矩陣的n次方即可。快速冪本質和普通快速冪一模一樣,只是乘法操作換成了矩陣的乘法,可以過載。stay foolish,stay hungry,stay young,stay i...

斐波那契數

入門訓練 fibonacci數列 時間限制 1.0s 記憶體限制 256.0mb 問題描述 fibonacci數列的遞推公式為 fn fn 1 fn 2,其中f1 f2 1。當n比較大時,fn也非常大,現在我們想知道,fn除以10007的餘數是多少。輸入格式 輸入包含乙個整數n。輸出格式 輸出一行,...

斐波那契數

斐波那契數列 fibonacci sequence 簡介 斐波那契數列 fibonacci sequence 又稱 分割 數列 因 數學家列昂納多 斐波那契 leonardoda fibonacci 以兔子繁殖為例子而引入,故又稱為 兔子數列 指的是這樣乙個數列 1 1 2 3 5 8 13 21 ...