提交时间:2024-05-05 11:07:51

运行 ID: 39726

#include<bits/stdc++.h> using namespace std; int n,x,y,i,d,a[105][105]; int dx[4]={0,-1,0,1},dy[4]={1,0,-1,0}; int main(){ ios::sync_with_stdio(false); cin.tie(0); cout.tie(0); cin>>n; x=n,y=1,i=n*n; for(int j=1;j<=n;j++)a[0][j]=1,a[n+1][j]=1,a[j][0]=1,a[j][n+1]=1; while(i){ a[x][y]=i; if(a[x+dx[d]][y+dy[d]]>0)d++; if(d>3)d=0; x+=dx[d],y+=dy[d]; i--; } for(int j=1;j<=n;j++){ for(int k=1;k<=n;k++)cout<<a[k][j]<<' '; cout<<'\n'; } return 0; }