7 条题解
-
0
根据题意模拟即可,while判断
n=int(input()) a=[[0 for i in range(100)]for j in range(100)] prei=1 prej=n//2+1 posj=0 posi=0 a[1][n//2+1]=1 k=2 while(k<=n*n): if(prei==1 and prej!=n): posi=n posj=prej+1 elif(prei!=1 and prej==n): posi=prei-1 posj=1 elif(prei==1 and prej==n): posi=prei+1 posj=prej elif(prei!=1 and prej!=n): if(a[prei-1][prej+1]==0): posi=prei-1 posj=prej+1 else: posj=prej posi=prei+1 prei=posi prej=posj a[posi][posj]=k k+=1 for i in range(1,n+1): for j in range(1,n+1): print(a[i][j],end=" ") print()
信息
- ID
- 156
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- 4
- 标签
- 递交数
- 138
- 已通过
- 68
- 上传者