提交时间:2024-03-23 17:31:25

运行 ID: 139508

#include<bits/stdc++.h> using namespace std; int main() { int n,m=1; cin>>n; int a[n+1][n+1]; int x=1,y=n; a[x][y]=m; while(m<n*n) { if(y-1>0) a[x][--y]=++m; else a[++x][y]=++m; while(x+1<=n&&y+1<=n) a[++x][++y]=++m; if(x+1<=n) a[++x][y]=++m; else a[x][--y]=++m; while(x-1>0&&y-1>0) a[--x][--y]=++m; } for(int i=1;i<=n;i++){ for(int j=1;j<=n;j++) cout<<setw(5)<<a[i][j]; cout<<endl;} return 0; }