题解
2024-09-28 22:03:23
发布于:广东
1阅读
0回复
0点赞
#include <bits/stdc++.h>
using namespace std;
int main(){
    int a[110][110]={};
    int n,x=1;
    cin>>n;
    int y=(n+1)/2;
    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;
}
这里空空如也

有帮助,赞一个