哪里错了呃 RE

P2615 [NOIP2015 提高组] 神奇的幻方

@[天才小萧](/user/427617) 改了,试一下。 ```cpp #include <iostream> #include <cstdio> using namespace std; int main(){ int n, a[50][50]={0}, x, y;//={0}漏了!必须加,不然可能初始值就不等于0! cin >> n; a[1][n / 2 + 1] = 1; x = 1, y = n / 2 + 1; for(int i = 2; i <= n * n; i++){ if(x == 1 && y != n){ a[n][y + 1] = i; x = n; y++; }else if(x != 1 && y == n){ a[x - 1][1] = i; x --; y = 1; }else if(x == 1 && y == n){ a[2][n] = i; x = 2; }else if(x != 1 && y != n){ if(a[x - 1][y + 1] == 0){ //上面没初始化,这里就要错! a[x - 1][y + 1] = i; x--; y++; }else{ a[x + 1][y] = i; x++; } } }for(int i = 1; i <= n; i++){ for(int j = 1; j <= n; j++){ cout << a[i][j] << ' '; }cout << endl; } return 0; } ```
by A524 @ 2021-03-14 08:00:48


@[小A](/user/484922) 谢谢 但是错的不是你说的 是14行的i--中间多了个空格 现在已经AC了
by 蒟蒻珂学家 @ 2021-03-15 21:02:03


|