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

有帮助,赞一个