poj3070
題意就是通過,矩陣求斐波那契數列數列:
如果不知道遞推怎麼來的,或者不知道矩陣快速冪的,可去:
看不懂打我
其實矩陣快速冪和快速冪乙個思想來的,**都差不多,矩陣快速冪就是把快速冪的乘法運算換成矩陣乘法,再加上一點矩陣知識。
快速冪模板:
#define ll long long int
ll quick_pow
(ll a,ll b,ll p)
b=b>>1;
a=a*a%p;
}return ans%p;
}
矩陣快速冪模板:
#define ll long long int
node mul
(node x,node y,
int p)
//矩陣乘法
node quick_pow
(node a,ll b,
int p)
//矩陣快速冪並求餘(p)
b>>=1;
a=mul(a,a,mod);}
return ans;
}
ac**:#include
#include
#include
#include
using namespace std;
#define ll long long int
#define m 2
const
int mod=
10000
;struct node
;void
init
(node &x)
//初始化為單位矩陣
node mul
(node x,node y,
int p)
//矩陣乘法
node quick_pow
(node a,ll b,
int p)
//矩陣快速冪並求餘(p)
b>>=1;
a=mul(a,a,mod);}
return ans;
}int
main
(void
)return0;
}
快速冪與矩陣快速冪模板
int ksm int a,int b return ans 矩陣快速冪簡單來說就是快速冪和矩陣乘法的結合 矩陣快速冪的模板 以斐波那契數列為模板 include using namespace std struct node node jzc node a,node b void jz ksm i...
矩陣快速冪模板
剛學了矩陣快速冪,花了點時間把之前的 修改一下寫成了矩陣類,就當做模板了.話不多說下面貼 首先是標頭檔案和巨集定義什麼的 include include include using namespace std define inf 1000000000 define maxm 20 define m...
矩陣快速冪模板
矩陣快速冪 o log n nyoj301 580ms 時間限制 1000 ms 記憶體限制 65535 kb 難度 4 描述 給你乙個遞推公式 f x a f x 2 b f x 1 c 並給你f 1 f 2 的值,請求出f n 的值,由於f n 的值可能過大,求出f n 對1000007取模後的...