hdu 1575Tr A 矩阵快速幂
来源:互联网 发布:ubuntu 安装maven3 编辑:程序博客网 时间:2024/05/20 18:03
#include<iostream>
#include<cmath>
#include<cstring>
#include<cstdio>
#include<algorithm>
#include<string>
#include<stack>
#include<queue>
#include<map>
#define PI acos(-1.0)
typedef long long LL;
const int MAX=0xfffffff;
using namespace std;
const int mx=11;
const int mod=9973;
int n;
class mat{
public:
__int64 v[11][11];
mat()
{
memset(v,0,sizeof(v));
}
};
mat matrix_mul(mat p1,mat p2)
{
mat t ;
for(int i=0;i<n;i++)
for(int j=0;j<n;j++)
if(p1.v[i][j])
for(int k=0;k<n;k++)
t.v[i][k]+=(p1.v[i][j]*p2.v[j][k])%mod; //忘写mod,差点卡死。。。
return t;
}
mat matrix_mi(mat p,int k)
{
mat t ;
for(int i=0;i<n;i++) t.v[i][i]=1;
while(k)
{
if(k&1) t=matrix_mul(t,p);
k>>=1;
p=matrix_mul(p,p);
}
return t;
}
int main( )
{
// freopen("1.txt","r",stdin);
int t;
scanf("%d",&t);
while(t--)
{
int k;
scanf("%d %d",&n,&k);
mat p;
for(int i=0;i<n;i++)
for(int j=0;j<n;j++)
scanf("%I64d",&p.v[i][j]);
mat ans=matrix_mi(p,k);
LL num=0;
for(int i=0;i<n;i++)
{
num+=ans.v[i][i]%mod;
}
printf("%I64d\n",num%mod);
}
return 0;
}
#include<cmath>
#include<cstring>
#include<cstdio>
#include<algorithm>
#include<string>
#include<stack>
#include<queue>
#include<map>
#define PI acos(-1.0)
typedef long long LL;
const int MAX=0xfffffff;
using namespace std;
const int mx=11;
const int mod=9973;
int n;
class mat{
public:
__int64 v[11][11];
mat()
{
memset(v,0,sizeof(v));
}
};
mat matrix_mul(mat p1,mat p2)
{
mat t ;
for(int i=0;i<n;i++)
for(int j=0;j<n;j++)
if(p1.v[i][j])
for(int k=0;k<n;k++)
t.v[i][k]+=(p1.v[i][j]*p2.v[j][k])%mod; //忘写mod,差点卡死。。。
return t;
}
mat matrix_mi(mat p,int k)
{
mat t ;
for(int i=0;i<n;i++) t.v[i][i]=1;
while(k)
{
if(k&1) t=matrix_mul(t,p);
k>>=1;
p=matrix_mul(p,p);
}
return t;
}
int main( )
{
// freopen("1.txt","r",stdin);
int t;
scanf("%d",&t);
while(t--)
{
int k;
scanf("%d %d",&n,&k);
mat p;
for(int i=0;i<n;i++)
for(int j=0;j<n;j++)
scanf("%I64d",&p.v[i][j]);
mat ans=matrix_mi(p,k);
LL num=0;
for(int i=0;i<n;i++)
{
num+=ans.v[i][i]%mod;
}
printf("%I64d\n",num%mod);
}
return 0;
}
0 0
- hdu 1575Tr A 矩阵快速幂
- HDU 1575 Tr A(矩阵快速幂)
- HDU 1575 Tr A (矩阵快速幂)
- HDU 1575-Tr A(矩阵快速幂)
- HDU 1575 Tr A (矩阵快速幂)
- HDU - 1575 Tr A(矩阵快速幂)
- hdu 1575 Tr A(矩阵快速幂)
- Hdu 1575 Tr A【矩阵快速幂】
- HDU 1575 Tr A (矩阵快速幂)
- 【HDU 1575】Tr A (矩阵快速幂)
- HDU 1575 Tr A 矩阵快速幂
- 【HDU 1575 Tr A】+ 矩阵快速幂
- HDU-1575-Tr A【矩阵快速幂】
- hdu 1575 TR A 矩阵快速幂
- HDU 1575 - Tr A(矩阵快速幂)
- HDU 1575 Tr A 矩阵快速幂
- HDU.1575 Tr A ( 矩阵快速幂)
- hdu 1575-Tr A(矩阵快速幂)
- mysql修改数据库默认编码
- hdu 1002 A + B Problem II
- 关于 setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key的另一种错误
- Cocos2d-x 瓦块地图小游戏 (二) 用Tiled创建自己的游戏地图
- JAVA三大有用的过滤器
- hdu 1575Tr A 矩阵快速幂
- java MapReduce步骤
- 今日作息及食谱(8.20)
- 数据库性能优化之SQL语句优化
- jsp放在WEB-INF下的原因
- UVA 10280 - Old Wine Into New Bottles
- mysql管理 ------查看 MySQL 数据库中每个表占用的空间大小
- PCA(Principal Component Analysis)主成分分析
- Oracle逻辑备份之数据泵(1)