【单位矩阵】【杭电OJ1575】
Tr A
Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 6490    Accepted Submission(s): 4817
每组数据的第一行有n(2 <= n <= 10)和k(2 <= k < 10^9)两个数据。接下来有n行,每行有n个数据,每个数据的范围是[0,9],表示方阵A的内容。
2 2
1 0
0 1
3 99999999
1 2 3
4 5 6
7 8 9
2686
#include<iostream>
#include<cstdio>
#include<algorithm>
#include<cstring>
using namespace std;
long long n,k;
void mul(long long wqw[][],long long tat[][])
{
long long or2[][];
memset(or2,,sizeof(or2));
for(int i = ; i < n ; i++)
{
for(int j = ; j < n ; j++)
{
for(int kk = ; kk < n ;kk++)
{
or2[i][j]+=(wqw[i][kk]*(tat[kk][j]))%;
or2[i][j]%=;
}
}
}
memcpy(wqw,or2,sizeof(or2));
}
void mulself(long long awa[][])
{
long long or3[][];
memset(or3,,sizeof(or3));
for(int i = ; i < n ; i++)
{
for(int j = ; j< n ; j++)
{
for(int kk = ; kk < n ; kk++)
{
or3[i][j]+=((awa[i][kk])%)*((awa[kk][j])%)%;
or3[i][j]%=;
}
}
}
memcpy(awa,or3,sizeof(or3));
}
int main()
{
int T;
scanf("%d",&T);
while(T--)
{
long long qwq[][],qaq[][];
scanf("%lld%lld",&n,&k);
memset(qwq,,sizeof(qwq));
for(int i = ; i < n ; i++)
{
for(int j = ; j < n ; j++)
{
scanf("%lld",&qaq[i][j]);
if(i==j)
qwq[i][j]=;//1单位矩阵
}
} while(k)
{
if(k&)
mul(qwq,qaq);
mulself(qaq);
k/=;
}
long long sum=;
for(int i = ; i < n ; i++)
{
sum+=(qwq[i][i]%);
sum%=;
}
cout << sum % << endl;
}
return ;
}

【单位矩阵】【杭电OJ1575】的更多相关文章
- acm入门  杭电1001题  有关溢出的考虑
		
最近在尝试做acm试题,刚刚是1001题就把我困住了,这是题目: Problem Description In this problem, your task is to calculate SUM( ...
 - 杭电acm 1002 大数模板(一)
		
从杭电第一题开始A,发现做到1002就不会了,经过几天时间终于A出来了,顺便整理了一下关于大数的东西 其实这是刘汝佳老师在<算法竞赛 经典入门 第二版> 中所讲的模板,代码原封不动写上的, ...
 - 杭电OJ——1198 Farm Irrigation (并查集)
		
畅通工程 Problem Description 某省调查城镇交通状况,得到现有城镇道路统计表,表中列出了每条道路直接连通的城镇.省政府"畅通工程"的目标是使全省任何两个城镇间都可 ...
 - 杭电ACM分类
		
杭电ACM分类: 1001 整数求和 水题1002 C语言实验题——两个数比较 水题1003 1.2.3.4.5... 简单题1004 渊子赛马 排序+贪心的方法归并1005 Hero In Maze ...
 - 高手看了,感觉惨不忍睹——关于“【ACM】杭电ACM题一直WA求高手看看代码”
		
按 被中科大软件学院二年级研究生 HCOONa 骂为“误人子弟”之后(见:<中科大的那位,敢更不要脸点么?> ),继续“误人子弟”. 问题: 题目:(感谢 王爱学志 网友对题目给出的翻译) ...
 - C#利用POST实现杭电oj的AC自动机器人,AC率高达50%~~
		
暑假集训虽然很快乐,偶尔也会比较枯燥,,这个时候就需要自娱自乐... 然后看hdu的排行榜发现,除了一些是虚拟测评机的账号以外,有几个都是AC自动机器人 然后发现有一位作者是用网页填表然后按钮模拟,, ...
 - 杭电ACM2076--夹角有多大(题目已修改,注意读题)
		
杭电ACM2076--夹角有多大(题目已修改,注意读题) http://acm.hdu.edu.cn/showproblem.php?pid=2076 思路很简单.直接贴代码.过程分析有点耗时间. / ...
 - 杭电ACM2092--整数解
		
杭电ACM2092--整数解 分析 http://acm.hdu.edu.cn/showproblem.php?pid=2092 一个YES,一个Yes.试了10几次..我也是无语了..哪里都不 ...
 - 杭电2034——人见人爱A-B
		
#include <stdio.h> #include <algorithm> using namespace std; int main () { int a[110],b[ ...
 
随机推荐
- DMA-总结
			
概念DMA “Direct Memory Access(存储器直接访问).这是指一种高速的数据传输操作,允许在外部设备和存储器之间直接读写数据.整个数据传输操作在一个称为"DMA控制器&qu ...
 - 【MVC】快速构建一个图片浏览网站
			
当抄完MusicStore时,你应该对MVC有一个比较清晰的认识了.接下来就需要做个网站来继续增加自己的知识了.那么,该做个什么网站呢.做个图片浏览网站吧,简单而实用. 简单设计 1.首先,页面中间是 ...
 - poj1226
			
题解: 后缀数组 把所有串先翻转,用一个没有出现过的字符连接 然后再把所有串接起来 然后用一个没有出现过的字符连接 然后二分 在后缀数组上判断lcp 代码: #include<cstdio> ...
 - MarkDown编辑器中缩进
			
首先,Markdown是不支持缩进的. 在Markdown里按下四个空格,就自动转入Code模式. 在Markdown里一个回车,不是分段而是换行,要两个回车,才是分段. 分段和换行的区别是:换行后, ...
 - L327 找灵魂伴侣
			
Looking for the Perfect Partner I'm sure we all remember a time when we fell in love. For some it wa ...
 - L248  词汇题 2006
			
The audience, hostile at first, were greatly impressed by her excellent performance. He wanted to st ...
 - ubantu安装node、npm、cnpm、live-server
			
更新ubuntu软件源 sudo apt-get update sudo apt-get install -y python-software-properties software-properti ...
 - python点滴:读取和整合文件夹下的所有文件
			
当我们想读取一个文件夹下的多个文件,并且将所有文件的内容整合成一个文件,应该怎么做? 基本的思路是:写一个专门的函数实现以上两个功能.主要用到的命令包括os.listdir().codecs.open ...
 - Python 网络通信协议 tcp udp区别
			
网络通信的整个流程 在这一节就给大家讲解,有些同学对网络是既熟悉又陌生,熟悉是因为我们都知道,我们安装一个路由器,拉一个网线,或者用无限路由器,连上网线或者连上wifi就能够上网购物.看片片.吃鸡了, ...
 - python 基础 内置函数 和lambda表达式
			
1.把任意数值转化为字符串有两种方法. (1)str()用于将数值转化为易于人读的形式.print(str("我是中国人"))>>>我是中国人 (2)repr() ...