求调矩阵快速幂模板/kk

P1939 矩阵加速(数列)

不太看的懂![](//图.tk/0) 建议搞个结构体 ```cpp const int mxn=33; struct mat{ int val[mxn][mxn]; inline void init0(){memset(val,0,sizeof(val));} inline void init1(){ init0(); for(int i=0;i<mxn;++i)val[i][i]=1; } }; const ll md=1000000007; inline void add(int&x,int y){ x+=y; if(x>=md)x-=md; } inline mat operator *(mat a,mat b){ mat c;c.init0(); for(int k=1;k<=32;++k)for(int i=1;i<=32;++i)for(int j=1;j<=32;++j)add(c.val[i][j],1ll*a.val[i][k]*b.val[k][j]%md); return c; } inline mat qp(mat x,ll y){ mat rt;rt.init1(); for(;y;y>>=1,x=x*x)if(y&1)rt=rt*x; return rt; } ```
by RedLycoris @ 2021-10-03 11:32:30


@[paulzrm](/user/226760) 谢谢![](//图.tk/3)
by cyhyyds @ 2021-10-03 11:34:50


好像是每次读入n时数组没重置
by Bezime @ 2021-10-03 11:39:54


@[Bezime](/user/354308) 谢谢! ~~多测没清空~~
by cyhyyds @ 2021-10-03 13:06:31


@[cyhyyds](/user/508316) 不用谢 ~~我也经常这样~~
by Bezime @ 2021-10-03 14:18:41


|