关注
第四题边界写成迭代变量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;
}
查看原帖
点赞 评论
相关推荐
查看17道真题和解析 点赞 评论 收藏
分享
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 在大厂上班是一种什么样的体验 #
11229次浏览 142人参与
# 你的mentor是什么样的人? #
50880次浏览 716人参与
# 程序员找工作至少要刷多少题? #
19522次浏览 253人参与
# 我和mentor的爱恨情仇 #
106029次浏览 942人参与
# 论秋招对个人心气的改变 #
11724次浏览 167人参与
# 校招第一份工作你干了多久? #
136527次浏览 597人参与
# 机械人避雷的岗位/公司 #
43683次浏览 302人参与
# 设计人如何选offer #
189549次浏览 868人参与
# 为了减少AI幻觉,你注入过哪些设定? #
5089次浏览 155人参与
# 你的秋招进行到哪一步了 #
2530064次浏览 23253人参与
# 机械人还在等华为开奖吗? #
312009次浏览 1582人参与
# 牛客AI体验站 #
7054次浏览 192人参与
# 重来一次,我还会选择这个专业吗 #
411099次浏览 3898人参与
# 我现在比当时_,你想录用我吗 #
8946次浏览 114人参与
# 12306一秒售罄,你抢到回家的票了吗? #
2088次浏览 48人参与
# 一张图晒一下你的AI员工 #
5328次浏览 120人参与
# AI Coding的使用心得 #
4834次浏览 102人参与
# 刚入职的你踩过哪些坑 #
7135次浏览 130人参与
# 关于春招/暑期实习,你想知道哪些信息? #
7799次浏览 121人参与
# 应届生进小公司有什么影响吗 #
118371次浏览 1159人参与
