九度 1443
来源:互联网 发布:python安装视频 编辑:程序博客网 时间:2024/06/06 10:46
题目1443:Tr A
- 题目描述:
A为一个方阵,则Tr A表示A的迹(就是主对角线上各项的和),现要求Tr(A^k)%9973。
- 输入:
数据的第一行是一个T,表示有T组数据。
每组数据的第一行有n(2 <= n <= 10)和k(2 <= k < 10^9)两个数据。接下来有n行,每行有n个数据,每个数据的范围是[0,9],表示方阵A的内容。
- 输出:
对应每组数据,输出Tr(A^k)%9973。
- 样例输入:
22 21 00 13 999999991 2 34 5 67 8 9
- 样例输出:
22686
这里主要是用到了矩阵的快速幂,用二分求幂原理求解,只不过这里是用在了矩阵的K次幂上
贴个a^k的函数求解:
int ak(int a,int k){//二分求幂求解a^kint ans=1;k%=M;while(k!=0){if(k%2==1){ans*=a;}k=k/2;a*=a;}return ans;}
#include<stdio.h>#define M 9973int main(){ int n,c,i,j,k,d; int buf[11][11],a[11][11],b[11][11]; while(scanf("%d",&n)!=EOF) { while(n--) { scanf("%d%d",&c,&d); //其中n为矩阵阶数 for(i=0;i<c;++i){ for(j=0;j<c;++j){ scanf("%d",&buf[i][j]); if(i==j) a[i][j]=1; else a[i][j]=0; } } while(d!=0){ if(d%2==1) { for(i=0;i<c;++i) for(j=0;j<c;++j) b[i][j]=0; //b数组初始化 for(i=0;i<c;++i){ for(j=0;j<c;++j) for(k=0;k<c;++k) b[i][j]+=a[i][k]*buf[k][j]; //a=a*buf(矩阵) } for(i=0;i<c;++i) for(j=0;j<c;++j) a[i][j]=b[i][j]%9973; } d/=2; for(i=0;i<c;++i) for(j=0;j<c;++j) b[i][j]=0; //b数组初始化 for(i=0;i<c;++i) //buf=buf*buf(矩阵) { for(j=0;j<c;++j) for(k=0;k<c;++k) b[i][j]+=buf[i][k]*buf[k][j]; } for(i=0;i<c;++i) for(j=0;j<c;++j) buf[i][j]=b[i][j]%9973; } int ans=0; for(i=0;i<c;++i) ans=(ans+a[i][i])%M; printf("%d\n",ans); } } return 0;}/************************************************************** Problem: 1443 User: 952086097 Language: C++ Result: Accepted Time:10 ms Memory:1020 kb****************************************************************/
0 0
- 九度 1443
- 九度 1443
- 九度oj 1443
- 九度 题目1443:Tr A
- 九度oj 题目1443:Tr A
- 九度OJ-1443:Tr A
- 九度OJ题目1443:Tr A
- 九度 题目1443:Tr A
- 九度 题目1443:Tr A
- 【九度OJ】:九度OJ 1050
- 【九度OJ】:九度OJ 1053
- 【九度OJ】:九度OJ 1056
- 【九度OJ】:九度OJ 1059
- 【九度OJ】:九度OJ 1206
- 人生九度
- 九度oj1181
- 九度oj1207
- 九度oj1182
- 第二讲,我们来谈谈:“什么是二进制”
- 离散数学在计算机科学中的应用
- java.util.Date获得年、月 ,获得年需要加1900,获得月需要加1
- 指针3
- 详细描述Java单例模式
- 九度 1443
- C API向MySQL插入批量数据的快速方法——关于mysql_autocommit
- ****(leetcode) Symmetric Tree
- 启动Tomcat 报错 :sjava.net.MalformedURLException unknown protocol: d
- 冒泡排序(2)
- 为大家提供一个好的时间工具类DateTime
- 关于类StrictMode
- Java Dom解析XML
- django 中集成 富文本编辑器