2 条题解
-
0
基础模拟,的确是一堆if-else if嵌套,无技术含量
#include <bits/stdc++.h> using namespace std; int n , posx , posy; int maze[40][40]; int main() { cin >> n; posx = 1; posy = n / 2 + 1; maze[posx][posy] = 1; for (int i = 2 ; i <= n * n ; i++) { if (posx == 1 && posy != n) { maze[n][posy + 1] = i; posx = n; posy++; } else if (posy == n && posx != 1) { maze[posx - 1][1] = i; posx--; posy = 1; } else if (posx == 1 && posy == n) { maze[posx + 1][posy] = i; posx++; } else { if (maze[posx - 1][posy + 1] == 0) { maze[posx - 1][posy + 1] = i; posx--; posy++; } else { maze[posx + 1][posy] = i; posx++; } } } for (int i = 1 ; i <= n ; i++) { for (int j = 1 ; j <= n ; j++) { cout << maze[i][j] << " "; } cout << endl; } return 0; }
- 1
信息
- ID
- 1408
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 1
- 标签
- 递交数
- 57
- 已通过
- 41
- 上传者