矩阵快速幂
softrice
这个作者很懒,什么都没留下…
展开
-
Kiki & Little Kiki 2 hdu 2276
递推公式F(i)=f(i)^f(i-1). 在这道题目中,"^ "相当于“*”,”&&“相当于“+”,初始化false相当于0。 #include using namespace std; #define MAX 103 void Mul(bool a[MAX][MAX],bool b[MAX][MAX],bool c[MAX][MAX]) { bool sum=false;原创 2013-04-14 22:51:27 · 949 阅读 · 0 评论 -
转移矩阵+矩阵快速幂
转移矩阵+矩阵快速幂 这是一道概率矩阵的题目。 给个智库百科的链接http://wiki.mbalib.com/wiki/%E8%BD%AC%E7%A7%BB%E6%A6%82%E7%8E%87%E7%9F%A9%E9%98%B5 构造概率矩阵后进行快速幂。 #include #include #include #include using namespace std; int n原创 2013-07-16 14:34:49 · 1294 阅读 · 0 评论 -
hdu 4549——M斐波那契数列
矩阵快速幂+欧拉定理 #include #include using namespace std; #define mod 1000000007 #define LL __int64 void Mul(LL a[2][2],LL b[2][2],LL c[2][2])//矩阵的乘法运算 { int i,j,k; LL sum; for(i=0;i<2;i++) for(j=原创 2013-09-30 20:45:47 · 836 阅读 · 0 评论 -
hdu 4565——So Easy!
#include #include #include using namespace std; #define LL __int64 LL a,b,n,m; void Mul(LL mat1[2][2],LL mat2[2][2],LL mat[2][2]) { for(int i=0;i<2;i++) for(int j=0;j<2;j++) {原创 2013-10-04 21:34:54 · 718 阅读 · 0 评论 -
矩阵快速幂 Fibonacci 3070 poj
题意为已知F0 = 0, F1 = 1, and Fn = Fn − 1 + Fn − 2 for n ≥ 2. 求Fn%10000. 这里运用到了矩阵快速幂的方法。 快速幂归根结底就是:把a^k中的k拆分为2进制 例如: 5^5=5^(1*1+0*2+1*4)=5^1*5^4. 计算量从算5次减少到了2次。 快速幂再结合矩阵,可以快速解决递推问题 Fn = Fn −原创 2013-04-04 17:25:59 · 1187 阅读 · 1 评论