Time Limit: 1000/1000 MS
(Java/Others) Memory Limit: 32768/32768 K
(Java/Others)
Total Submission(s): 2449 Accepted
Submission(s): 1819
1 //0MS 212K 969 B G++ 2 /* 3 4 第一次 做矩阵的题.有点渣,不过这题是水题。 5 6 */ 7 #include<stdio.h> 8 #include<string.h> 9 #define N 9973 10 struct matrix{ 11 int g[15][15]; 12 }temp,ans; 13 int n; 14 matrix mutil(matrix a,matrix b) 15 { 16 matrix c; 17 for(int i=0;i<n;i++) 18 for(int j=0;j<n;j++){ 19 c.g[i][j]=0; 20 for(int k=0;k<n;k++){ 21 c.g[i][j]+=a.g[i][k]*b.g[k][j]; 22 c.g[i][j]%=N; 23 } 24 } 25 return c; 26 } 27 void solve(int k) 28 { 29 while(k){ 30 if(k&1) ans=mutil(temp,ans); 31 temp=mutil(temp,temp); 32 k/=2; 33 } 34 int sum=0; 35 for(int i=0;i<n;i++){ 36 sum+=ans.g[i][i]; 37 sum%=N; 38 } 39 printf("%d\n",sum); 40 } 41 int main(void) 42 { 43 int t,k; 44 scanf("%d",&t); 45 while(t--) 46 { 47 scanf("%d%d",&n,&k); 48 for(int i=0;i<n;i++) 49 for(int j=0;j<n;j++){ 50 ans.g[i][j]=(i==j); 51 scanf("%d",&temp.g[i][j]); 52 } 53 solve(k); 54 } 55 return 0; 56 }
hdu 1575 Tr A (二分矩阵),布布扣,bubuko.com
原文:http://www.cnblogs.com/GO-NO-1/p/3655138.html