无缘无故就T了,怎么回事???
查看原帖
无缘无故就T了,怎么回事???
565707
mediocre_楼主2023/7/20 21:02
#include<bits/stdc++.h>
using namespace std;
int main(){
    int n, flag = 0, a[10][10], x = 1, y = 0;
    scanf("%d", &n);
    do {
		while (!a[x][y + 1] && y < n) a[x][++y] = ++flag;
		while (!a[x + 1][y] && x < n) a[++x][y] = ++flag;
		while (!a[x][y - 1] && y > 1) a[x][--y] = ++flag;
		while (!a[x - 1][y] && x > 1) a[--x][y] = ++flag;
	} while (flag <= n * n);
	for (int i = 1; i <= n; ++i) {
		for (int j = 1; j <= n; ++j)
		    printf("%3d ", a[i][j]);
		printf("\n");
	}
	return 0;
}
2023/7/20 21:02
加载中...