666
2025-01-21 11:17:08
发布于:浙江
1阅读
0回复
0点赞
#include <iostream>
#include <vector>
using namespace std;
int main(){
int n;
cin >> n;
vector<vector<int>> a(n+1,vector<int>(n+1,0));
int x=1,y=(n>>1)+1;
for (int i=1;i<=n*n;++i){
a[x][y]=i;
if (x==1 && y!=n){
x=n,++y;
}else if (y==n && x!=1){
y=1,--x;
}else if (x==1 && y==n){
++x;
}else if (x!=1 && y!=n && a[x-1][y+1]==0){
--x,++y;
}else{
++x;
}
}
for (int i=1;i<=n;++i){
for (int j=1;j<=n;++j){
cout<<a[i][j]<<" ";
}
cout<<endl;
}
return 0;
}
这里空空如也
有帮助,赞一个