1 条题解
-
0
#include<iostream> using namespace std; int cube[40][40]; int main(){ int n,mid; cin>>n; mid=(n+1)/2; cube[0][mid-1]=1; int x=0,y=mid-1;//x=hang y=lie for(int i=2;i<=n*n;i++){ if(x==0&&y!=n-1){ cube[n-1][y+1]=i; x=n-1; y+=1; }else if(y==n-1&&x!=0){ cube[x-1][0]=i; x-=1; y=0; }else if(x==0&&y==n-1){ cube[x+1][y]=i; x+=1; }else if(x!=0&&y!=n-1&&cube[x-1][y+1]==0){ cube[x-1][y+1]=i; x-=1; y+=1; }else if(x!=0&&y!=n-1&&cube[x-1][y+1]!=0){ cube[x+1][y]=i; x+=1; } } for(int i=0;i<n;i++){ for(int j=0;j<n;j++){ cout<<cube[i][j]<<' '; } cout<<endl; } return 0; }
很好的一道模拟题
- 1
信息
- ID
- 474
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- 3
- 标签
- 递交数
- 22
- 已通过
- 19
- 上传者