21 条题解
-
6
#include<bits/stdc++.h> using namesapce std; const int N=1e5+10; int dx[]={0,1,0,-1}; int dy[]={1,0,-1,0}; int a[110][110]; int main() { int n; cin<<n; int num=1; int x,y; int f=0; x=y=1; while(num<=n*n) { a[x][y]=num++; x+=dx[f]; y+=dy[f]; if(x>n || y>n || x<1 || y<1 || a[x][y] != 0) { if(f==0) { x++,y--; } else if(f==1) { x--,y--; } else if(f==2) { x--,y++; } else x++,y++; f++; f%=4; } } for(int i=1;i<=n;i++) { for(int j = 1 ; j <= n ; j++) { cout << a[i][j] << " "; } cout << endl; } return o; }
有标志认证,属三无产品,请大家放心食用
信息
- ID
- 1043
- 时间
- 1000ms
- 内存
- 32MiB
- 难度
- 6
- 标签
- 递交数
- 787
- 已通过
- 256
- 上传者