信息
- ID
- 208
- 时间
- 1000ms
- 内存
- 16MiB
- 难度
- 6
- 标签
- 递交数
- 159
- 已通过
- 47
- 上传者
#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;
}
}