文章
20
粉丝
0
获赞
68
访问
2.2k
#include<bits/stdc++.h>
using namespace std;
int res[22][22];
int main(){
int n;
cin >> n;
int mx[] = {1, 0, -1, 0};
int my[] = {0, 1, 0, -1};
int k = 1, f = 0;
int x = 1, y = 1;
// 方阵周围,围一圈非零数字,碰到了就转向
for(int i = 1; i <= n; i++){
res[n+1][i] = 1;
}
for(int i = 1; i <= n; i++){
res[i][n+1] = 1;
}
for(int i = 1; i <= n; i++){
res[0][i] = 1;
}
//
while(k <= n*n){
res[x][y] = k++;
if(res[x+mx[f]][y+my[f]] != 0){
f = (f+1) % 4;
...
登录后发布评论
暂无评论,来抢沙发