HDU 1575 EASY
#include <iostream>
#include <cstdio>
#include <cstring>
#include <algorithm> using namespace std; int n,M=9973;
struct Matrax {
int m[15][15];
}; Matrax a,per; void initial(){
int i,j;
for(i=0;i<n;i++){
for(j=0;j<n;j++){
scanf("%d",&a.m[i][j]);
a.m[i][j]%=M;
per.m[i][j]=(i==j);
}
}
} Matrax multi(Matrax a,Matrax b){
Matrax c;
int k,i,j;
for(i=0;i<n;i++){
for(j=0;j<n;j++){
c.m[i][j]=0;
for(k=0;k<n;k++){
c.m[i][j]=(c.m[i][j]+a.m[i][k]*b.m[k][j])%M;
}
c.m[i][j]%=M;
}
}
return c;
} Matrax Power(int k){
Matrax c,p,ans=per;
p=a;
while(k){
if(k&1){
ans=multi(ans,p);
k--;
}
else {
k/=2;
p=multi(p,p);
}
}
return ans;
} int main(){
int t,k;
scanf("%d",&t);
while(t--){
scanf("%d%d",&n,&k);
initial();
Matrax ans=Power(k);
int ant=0;
for(int i=0;i<n;i++)
ant=(ant+ans.m[i][i])%M;
printf("%d\n",ant);
}
return 0;
}
HDU 1575 EASY的更多相关文章
- HDU - 1575——矩阵快速幂问题
HDU - 1575 题目: A为一个方阵,则Tr A表示A的迹(就是主对角线上各项的和),现要求Tr(A^k)%9973. Input数据的第一行是一个T,表示有T组数据. 每组数据的第一行有n( ...
- HDU 1575 Tr A(矩阵高速幂)
题目地址:HDU 1575 矩阵高速幂裸题. 初学矩阵高速幂.曾经学过高速幂.今天一看矩阵高速幂,原来其原理是一样的,这就好办多了.都是利用二分的思想不断的乘.仅仅只是把数字变成了矩阵而已. 代码例如 ...
- HDU.1575 Tr A ( 矩阵快速幂)
HDU.1575 Tr A ( 矩阵快速幂) 点我挑战题目 题意分析 直接求矩阵A^K的结果,然后计算正对角线,即左上到右下对角线的和,结果模9973后输出即可. 由于此题矩阵直接给出的,题目比较裸. ...
- hdu 1575 Tr A
题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=1575 Tr A Description A为一个方阵,则Tr A表示A的迹(就是主对角线上各项的和), ...
- HDU 别easy在一系列的
别easy在一系列的 Time Limit : 2000/1000ms (Java/Other) Memory Limit : 65536/32768K (Java/Other) Total Su ...
- HDU 1575 Tr A 【矩阵经典2 矩阵快速幂入门】
任意门:http://acm.hdu.edu.cn/showproblem.php?pid=1575 Tr A Time Limit: 1000/1000 MS (Java/Others) Me ...
- hdu So Easy!
So Easy! Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Su ...
- hdu 1575 Tr A(矩阵快速幂乘法优化算法)
Problem Description A为一个方阵,则Tr A表示A的迹(就是主对角线上各项的和),现要求Tr(A^k)%. Input 数据的第一行是一个T,表示有T组数据. 每组数据的第一行有n ...
- HDU 1575 Tr A----矩阵相乘题。
Tr A Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submi ...
随机推荐
- 在ubuntu中安装与配置zsh与oh-my-zsh
先补充点东西 1.ubuntu中默认安装了那些shell jiang@Linux:~$ cat /etc/shells # /etc/shells: valid login shells/bin/sh ...
- Swift - 获取当前时间的时间戳(时间戳与时间互相转换)
(本文代码已升级至Swift3) 1,时间戳 时间戳是指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总秒数. 2,获取当前时间的时 ...
- iOS10 推送通知 UserNotifications
简介 新框架 获取权限 获取用户设置 注册APNS,获取deviceToken 本地推送流程 远程推送流程 通知策略(Category+Action) 附件通知 代理回调 简介 iOS10新增了Use ...
- idea的环境变量设置(Enviroment variables)
- YCbCr to RGB and RGB toYCbCr
RGB => YCbCr: Y = 0.299R + 0.587G + 0.114BCb = -0.1726R - 0.3388G + 0.5114B + 128Cr = 0.5114R - 0 ...
- intelij idea+springMVC+spring+mybatis 初探(持续更新)
intelij idea+springMVC+spring+mybatis 初探(持续更新) intellij 创建java web项目(maven管理的SSH) http://blog.csdn.n ...
- OnLineML一:关于Jubatus 的简介...
一:简介:原文链接:jubat.us/en/ xuwenq.iteye.com/blog/1702746 Jubatus http://jubat.us/en/overview.html 是一个面向 ...
- 关于XML学习
XML为知识构架存储语言: http://www.w3school.com.cn/xml/xml_tree.asp 语义网:为计算机构建一个系统的概念网络模型是计算机理解概念和机间信息交流的途径:XM ...
- python入门基础知识
1.python环境的安装 python2 python3 安装后添加环境变量 2.编码 最早编码ASCII码,主要有英文,数字,字符.一字节(byte),八位(bit),代表一个字符 unicode ...
- Javaee 方法的构建和调用
主类: package Szy02; public class Person { String name; int age; String sex; public Person(){ } public ...