【洛谷P3390】 矩阵快速幂(模板)
2017-02-11 21:39
246 查看
贴一下矩阵快速幂的模板
#include<iostream> #include<cstdio> #include<cstring> #include<string> #include<algorithm> using namespace std; typedef long long ll; const ll mod=1e9+7; struct hp{ ll a[110][110]; }con; ll n; ll ans[110][110]; inline hp work(hp a,hp b) { hp c; memset(c.a,0,sizeof(c.a)); for (int i=1;i<=n;i++) for (int j=1;j<=n;j++) for (int k=1;k<=n;k++) c.a[i][j]=(c.a[i][j]+(a.a[i][k]*b.a[k][j])%mod)%mod; return c; } inline hp fpow(hp a,ll p) { hp ans=con; for (;p;p>>=1,a=work(a,a)) if (p&1) ans=work(ans,a); return ans; } int main() { ll k; cin>>n>>k; for (int i=1;i<=n;i++) for (int j=1;j<=n;j++) cin>>con.a[i][j]; con=fpow(con,k-1); for (int i=1;i<=n;i++) { for (int j=1;j<=n;j++) cout<<con.a[i][j]<<' '; cout<<endl; } }
相关文章推荐
- 洛谷P3390 【模板】矩阵快速幂
- 洛谷P3390【模板】矩阵快速幂——矩阵运算入门笔记
- 模板【洛谷P3390】 【模板】矩阵快速幂
- 洛谷P3390 【模板】矩阵快速幂
- 洛谷P3390 【模板】矩阵快速幂
- 矩阵快速幂 模板
- 模板——矩阵快速幂
- HDU1575:Tr A(矩阵快速幂模板题)
- 矩阵快速幂模板
- hdoj 1575 Tr A(矩阵快速幂,模板题)
- 矩阵快速幂模板
- 矩阵快速幂模板
- Additions HNUST 1713(矩阵快速幂模板 )
- 【矩阵快速幂*模板】nyoj 301 递推求值
- 洛谷 P3390 【模板】矩阵快速幂
- 那啥,,矩阵乘法,矩阵快速幂模板
- 快速幂模板 -->加法快速幂+乘法快速幂+矩阵快速幂
- 矩阵快速幂模板HDU——1575
- 矩阵快速幂模板
- 【模板】矩阵快速幂