全wa求助
查看原帖
全wa求助
625344
qazwsx12367楼主2022/5/23 13:55
#include <stdio.h>
#define P 1000000007
void jz_xc(int n , long long [][n] , long long [][n]);
int main (){
	int n , m;
	scanf("%d%d" , &n , &m);
	long long jz[n][n];
	int i , j;
	for(i = 0;i < n;i ++){
		for(j = 0;j < n;j ++){
			scanf("%lld" , &jz[i][j]);
		}
	}
	long long ans[n][n];
	for(i = 0;i < n;i ++){
		for(j = 0;j < n;j ++){
			if(i == j){
				ans[i][j] = 1LL;
			}else{
				ans[i][j] = 0LL;
			}
		}
	}
	while(m){
		if(m & 1){
			jz_xc(n , ans , jz);
		}
		m /= 2;
		jz_xc(n , jz , jz);
	}
	for(i = 0;i < n;i ++){
		for(j = 0;j < n;j ++){
			printf("%lld " , ans[i][j]);
		}
		putchar('\n');
	}
	return 0;
} 

void jz_xc(int n , long long jz1[][n] , long long jz2[][n]){
	long long jz3[n][n];
	int i , j , k;
	for(i = 0;i < n;i ++){
		for(j = 0;j < n;j ++){
			jz3[i][j] = 0LL;
		}
	}
	for(i = 0;i < n;i ++){
		for(j = 0;j < n;j ++){
			for(k = 0;k < n;k ++){
				jz3[i][j] += ((jz1[i][k] % P) * (jz2[k][j] % P)) % P;
			}
		}
	}
	for(i = 0;i < n;i ++){
		for(j = 0;j < n;j ++){
			jz1[i][j] = jz3[i][j];
		}
	}
}
2022/5/23 13:55
加载中...