关注
第四题边界写成迭代变量a 9%,哭了!
矩阵幂乘思路,参考弗洛伊德算法
#include <iostream>
using namespace std;
int map[4][4] = {{0, 1, 1, 1}, {1, 0, 1, 1}, {1, 1, 0, 1}, {1, 1, 1, 0}};//每一代迭代的结果
int mapTempt[4][4] = {0}; //用来装临时变量的
int mapPattern[4][4] = {{0, 1, 1, 1}, {1, 0, 1, 1}, {1, 1, 0, 1}, {1, 1, 1, 0}};//模式矩阵,结果就是这个矩阵的k次方的最后一个元素
int lineMutil(int i, int j){ //矩阵行列相乘
int sum=0;
for(int k=0;k<4;++k){
sum += map[i][k] *mapPattern[k][j];
}
return sum;
}
void mapMutil(){ //矩阵相乘
for(int i=0;i<4;++i){
for(int j=0;j<4;++j){
mapTempt[i][j] = lineMutil(i, j);
}
}
}
void copy(){ //拷贝临时矩阵到迭代矩阵,
for(int i=0;i<4;++i){
for(int j=0;j<4;++j){
map[i][j] = mapTempt[i][j];
}
}
}
int main() {
int k;
cin>>k;
for(int i=1;i<k;++i){ //矩阵的k次幂
mapMutil();
copy();
}
cout<<map[3][3]; //最后一个元素即是答案
return 0;
}
查看原帖
点赞 评论
相关推荐
点赞 评论 收藏
分享
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 实习,不懂就问 #
7164次浏览 102人参与
# 一觉醒来,秋招难度下降一万倍…… #
83196次浏览 642人参与
# 现代汽车前瞻技术研发急速编程挑战赛 #
15689次浏览 146人参与
# 你觉得实习能学到东西吗 #
3627次浏览 76人参与
# 如果中了500万,你会离职吗? #
84903次浏览 657人参与
# 你觉得现在还能进互联网吗? #
410次浏览 22人参与
# 如何准备秋招 #
2160次浏览 29人参与
# 校招求职有谈薪空间吗 #
149839次浏览 2031人参与
# 软开人,说说你的烦心事 #
53262次浏览 368人参与
# 秋招什么时候开投比较合适? #
1324次浏览 32人参与
# 诺瓦星云求职进展汇总 #
200337次浏览 1665人参与
# 你觉得专业和学校哪个对薪资影响最大 #
61485次浏览 491人参与
# 预测一下26届秋招形势 #
5831次浏览 66人参与
# 新凯来求职进展汇总 #
39827次浏览 103人参与
# 打工人的精神状态 #
50161次浏览 869人参与
# 我的国央企投递进展 #
44630次浏览 276人参与
# 校招第一份工作你干了多久? #
86501次浏览 400人参与
# 每个月的工资都是怎么分配的? #
3385次浏览 63人参与
# 你今年的保底offer是哪家 #
118664次浏览 538人参与
# 机械实习一天多少钱合适? #
27680次浏览 168人参与
# 来聊聊你目前的求职进展 #
634562次浏览 6747人参与