矩阵幂(矩阵k次幂)

矩阵幂

cpp 复制代码
#include<stdio.h>
//矩阵乘法 
void cf(int a[20][20],int b[20][20],int result[20][20],int n){
	for(int i=0;i<n;i++){
		for(int j=0;j<n;j++){
			result[i][j]=0;
			for(int k=0;k<n;k++){
				result[i][j]+=a[i][k]*b[k][j];
			}
		}
	}
}

void print(int a[20][20],int n){
	for(int i=0;i<n;i++){
		for(int j=0;j<n;j++){
			if(j>0)
				printf(" ");
			printf("%d",a[i][j]);
		}
		printf("\n"); 
	}
} 
int main(){
	int n,k;
	while(scanf("%d %d",&n,&k)!=EOF){
		int a[20][20];
		int result[20][20];
		for(int i=0;i<n;i++){
			for(int j=0;j<n;j++){
				scanf("%d",&a[i][j]);
			}
		}
		//单位矩阵
		for(int i=0;i<n;i++){
			for(int j=0;j<n;j++){
				if(i==j)
					result[i][j]=1;
				else
					result[i][j]=0;
			}
		} 
		while(k--){
			int temp[20][20];
			cf(result,a,temp,n);
			for(int i=0;i<n;i++){
				for(int j=0;j<n;j++)
					result[i][j]=temp[i][j];
			}
		}
		print(result,n);
}
	return 0;
}
相关推荐
IronMurphy12 小时前
【算法二十七】230. 二叉搜索树中第 K 小的元素 199. 二叉树的右视图
算法·深度优先
暮冬-  Gentle°12 小时前
C++中的工厂方法模式
开发语言·c++·算法
LS_learner12 小时前
OpenCode的Agent skill创建方式
人工智能
云布道师12 小时前
OSS 向量 Bucket 最佳实践:快速构建多模态图片语义检索
人工智能
独断万古他化12 小时前
软件测试新纪元:为什么选择AI测试
人工智能·ai·测试
张张123y12 小时前
AI Agent Memory:从理论到实战,掌握长短期记忆的核心技术【1】
大数据·人工智能·transformer
这张生成的图像能检测吗12 小时前
(论文速读)SFAFBR:一种自监督的人工特征偏置校正框架
人工智能·深度学习·神经网络·机器学习·故障诊断·自监督学习
大傻^12 小时前
LangChain4j Spring Boot Starter:自动配置与声明式 Bean 管理
java·人工智能·spring boot·spring·langchain4j
沐硕12 小时前
《基于改进协同过滤与多目标优化的健康饮食推荐系统设计与实现》
java·python·算法·fastapi·多目标优化·饮食推荐·改进协同过滤
披着羊皮不是狼12 小时前
AI计算系统实战:从算子实现到GPU性能调优
人工智能