hdu4549 M斐波那契數列

2021-08-30 09:00:16 字數 768 閱讀 3756

題意:f[0] = a ,f[1] = b,f[n] = f[n-1] * f[n-2] ( n > 1 )

現在給出a, b, n,你能求出f[n]的值

想到點子上就很簡單了,可當時做的時候都沒有向找遞推式的方向去思考

1.找f[n]的遞推式

附:斐波那契數矩陣公式

fn+1   fn        1    1

=             的n次方

fn     fn-1       1     0

#include #define x 10005

#define inf 0x3f3f3f3f

#define pi 3.141592653589793238462643383

using namespace std;

typedef long long ll;

const int mod=1e9+7;

struct node

f;node matrix(node a,node b)

}return ans;

}node pow(node a,int n)

return e;

}ll pow_(ll a,ll n)

return ans%mod;

}int main()

else

}return 0;

}

HDU 4549 M斐波那契數列

解題思路 他和普通的斐波那契數列相似,但是是乘法,所以還要變形下,我們寫幾個式子就會發現一些規律 f 2 a 1 b 1 f 3 a 1 b 2 f 4 a 2 b 3 f 5 a 3 b 5 我們發現這裡a和b的冪是斐波那契數列,所以我們可以用矩陣快速冪來算,這裡要用到費馬小定理a p a mod...

hdu4549 M斐波那契數列

m斐波那契數列f n 是一種整數數列,它的定義如下 f 0 a f 1 b f n f n 1 f n 2 n 1 現在給出a,b,n,你能求出f n 的值嗎?input 輸入包含多組測試資料 每組資料佔一行,包含3個整數a,b,n 0 a,b,n 10 9 output 對每組測試資料請輸出乙個整...

HDU 4549 M斐波那契數列

先用矩陣快速冪計算出f n 含有a的個數和b的個數,再用快速冪算出答案 wa後才發現a b c並不等於a b c c 費馬小定理 c為質數且a,c互質,a b c a b c 1 c 那麼求冪次時mod 1就可以了 include include include include includeusi...