矩阵快速幂
来源:互联网 发布:滤镜软件原宿风 编辑:程序博客网 时间:2024/06/01 07:59
A为一个方阵,则Tr A表示A的迹(就是主对角线上各项的和),现要求Tr(A^k)%9973。
每组数据的第一行有n(2 <= n <= 10)和k(2 <= k < 10^9)两个数据。接下来有n行,每行有n个数据,每个数据的范围是[0,9],表示方阵A的内容。
22 21 00 13 999999991 2 34 5 67 8 9
22686
#include <cstdio>#include <cstring>#include <algorithm>using namespace std;int n,k;const int mod=9973;struct node{ int a[11][11];}f,g;node mul(node q,node p){ node z; for(int i=0; i<n; i++) { for(int j=0; j<n; j++) { z.a[i][j]=0; for(int k=0; k<n; k++) { z.a[i][j]=(z.a[i][j]+q.a[i][k]*p.a[k][j]%mod)%mod; } } } return z;}node A(node x,node s,int b){ while(b) { if(b&1) { s=mul(s,x); } x=mul(x,x); b>>=1; } return s;}int main(){ int t; scanf("%d",&t); while(t--) { int ans=0; scanf("%d %d",&n,&k); for(int i=0; i<n; i++) for(int j=0; j<n; j++) { scanf("%d",&f.a[i][j]); g.a[i][j]=f.a[i][j]; } node aa=A(f,g,k-1); for(int i=0;i<n;i++) { ans=(ans+aa.a[i][i])%mod; } printf("%d\n",ans%mod); } return 0;}
阅读全文
1 0
- 快速矩阵快速幂
- 转移矩阵+矩阵快速幂
- 矩阵乘法 矩阵快速幂
- 构造矩阵+矩阵快速幂
- 矩阵快速幂,矩阵加法,矩阵乘法
- 快速幂||矩阵快速幂
- 快速幂&矩阵快速幂
- 快速幂,矩阵快速幂
- 快速幂 矩阵快速幂
- 快速幂&矩阵快速幂
- 【快速幂】【矩阵快速幂】
- 快速幂和快速矩阵
- poj3070--矩阵 快速幂
- POJ3233矩阵快速幂
- poj3070Fibonacci 矩阵快速幂
- 矩阵的快速幂
- 矩阵快速幂
- 矩阵的快速幂
- python实现-字符串最后一个单词的长度
- java泛型
- javaseday28(Swing 插件 做个小界面)
- 遇到的问题---百度ueditor----An error occurred at line: 12 in the jsp file: /ueditor/jsp/controller.jsp
- v4l2 ioctl框架分析
- 矩阵快速幂
- oracle10g提示“身份证明检索失败”
- 关于顺序数组求最大差值或最大收益算法
- ubuntu14 上安装tensorflow 遇到的问题
- 数据结构之栈、队列算法
- 【51Nod1241】 特殊的排序
- C#基础-006if条件语句
- Numpy_tile函数(kNN算法)
- WAIT 和sleep的区别