5 条题解
-
-1
#include
using namespace std; const int Maxn=55; int a[Maxn][Maxn]; int main() { int n; cin>>n; a[1][(n+1)/2]=1; int x=1; int y=(n+1)/2; for(int i=2;i<=n*n;i++) { if(x!=1&&y!=1){ if(a[x-1][y-1]0){x--;y--;a[x][y]=i;continue;} else {x++;a[x][y]=i;continue;} } if(x1){ if(y!=1) { if(a[n][y-1]==0) { x=n; y--; a[x][y]=i; continue; } else { x++; a[x][y]=i; continue; } } else { x++; a[x][y]=i; continue; }
} if(y==1){ if(x!=1) { if(a[x-1][n]==0) { x--; y=n; a[x][y]=i; continue; } else { x++; a[x][y]=i; continue; } } } } for(int i=1;i<=n;i++) { for(int j=1;j<=n;j++) { cout<<a[i][j]<<" "; } cout<<endl; } return 0;
}
信息
- ID
- 93
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- 5
- 标签
- 递交数
- 195
- 已通过
- 73
- 上传者