关注
第二题C++
#include<iostream>
(5488)#include<vector>
using namespace std;
int main()
{
int n;
cin >> n;
vector<int>fib(n*n, 0);
fib[0] = 1;
fib[1] = 1;
for (int i = 2; i < n*n; i++)
{
fib[i] = fib[i - 1] + fib[i - 2];
}
int res = fib.size() - 1;
int left = 0, right = n - 1, top = 0, bottom = n - 1; //top、bottom横坐标 ; left、right纵坐标
vector<vector<int>>vec(n,vector<int>(n,0));
while (1)
{
for (int i = left; i <= right; ++i)
{
vec[top][i] = fib[res];
--res;
}
if (++top > bottom)
break;
for (int j = top; j <= bottom; ++j)
{
vec[j][right] = fib[res];
--res;
}
if (--right < left)
break;
for (int m = right; m >= left; --m)
{
vec[bottom][m] = fib[res];
--res;
}
if (--bottom < top)
break;
for (int n = bottom; n >= top; --n)
{
vec[n][left] = fib[res];
res--;
}
if (++left > right)
break;
}
for (auto n : vec)
{
vector<int>temp = n;
for (auto m : temp)
cout << m << " ";
cout << endl;
}
return 0;
}
查看原帖
点赞 评论
相关推荐
点赞 评论 收藏
分享
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 考研对你找工作产生了哪些影响? #
5089次浏览 60人参与
# 打杂的实习你会去吗? #
108661次浏览 949人参与
# 聊聊这家公司值得去吗 #
239005次浏览 2236人参与
# 机械只有读研才有出路吗? #
19872次浏览 228人参与
# 你认为哪个岗位找工作最卷 #
16524次浏览 66人参与
# 面试被问第一学历差时该怎么回答 #
130724次浏览 823人参与
# 远程面试的尴尬瞬间 #
100987次浏览 828人参与
# 硬件人绝对不能踩的坑 #
61325次浏览 736人参与
# kpi面有什么特征 #
35694次浏览 264人参与
# 工作中哪个瞬间让你想离职 #
24195次浏览 166人参与
# 如何缓解入职前的焦虑 #
187287次浏览 1319人参与
# 你有哪些缓解焦虑的方法? #
3416次浏览 131人参与
# 职场人,说说你的烦心事 #
9034次浏览 83人参与
# 实习生应该准时下班吗 #
223513次浏览 1398人参与
# 秋招最大的收获是什么? #
34214次浏览 302人参与
# 职场上哪些事情令人讨厌 #
16899次浏览 86人参与
# 为了找工作你投递了多少公司? #
12066次浏览 164人参与
# 你今年的平均薪资是多少? #
126746次浏览 661人参与
# 运营/市场营销人的秋招现状 #
17268次浏览 189人参与
# 担心入职之后被发现很菜怎么办 #
126930次浏览 760人参与