题解oi
2025-09-25 18:59:48
发布于:浙江
0阅读
0回复
0点赞
#include<iostream>
using namespace std;
int main(){
int n,a[40][40]={},k=1;
cin>>n;
a[1][n/2+1]=k;
int x=1,y=n/2+1;
while(k<n*n){
if(x1&&y!=n){
x=n,y++,a[x][y]=++k;
}else if(yn&&x!=1){
y=1,x--,a[x][y]=k;
}else if(x1&&yn){
x,a[x][y]=k;
}else{
if(a[x-1][y+1]==0){
x--,y,a[x][y]=k;
}else{
x,a[x][y]=k;
}
}
}
for(int i=1;i<=n;i){
for(int j=1;j<=n;j++){
cout<<a[i][j]<<" ";
}
cout<<endl;
}
return 0;
}
这里空空如也






有帮助,赞一个