11 条题解
-
-1
#include<bits/stdc++.h> using namespace std; int main(){ int n,i,j,s=1,k,a,t,h=0; cin>>n; int b[n][n]; k=n-1; for(i=0;i<n;i++){ for(j=0;j<n;j++) b[i][j]=0; } for(j=0;j<n;j++){ b[0][j]=s; s++; } for(a=1;a<=n/2;a++){ for(t=0;t<k;t++){ if(b[a+t][n-a]!=0){ h=1; break; }else{ b[a+t][n-a]=s; s++; } } for(t=1;t<=k;t++){ if(b[a+k-1][n-a-t]!=0){ h=1; break; }else{ b[a+k-1][n-a-t]=s; s++; } } k--; for(t=1;t<=k;t++){ if(b[a+k-t][n-a-k-1]!=0){ h=1; break; }else{ b[a+k-t][n-a-k-1]=s; s++; } } for(t=1;t<=k;t++){ if(b[a][n-a-k-1+t]!=0){ h=1; break; }else{ b[a][n-a-k-1+t]=s; s++; } } k--; if(h==1) break; } for(i=0;i<n;i++){ for(j=0;j<n;j++) printf("%3d",b[i][j]); cout<<endl; } }
信息
- ID
- 208
- 时间
- 1000ms
- 内存
- 16MiB
- 难度
- 6
- 标签
- 递交数
- 159
- 已通过
- 47
- 上传者