0
1
mirror of https://git.sb/baoshuo/OI-codes.git synced 2024-12-18 13:12:01 +00:00
OI-codes/Luogu/problem/P1162/P1162.cpp
2021-01-02 15:30:52 +08:00

49 lines
992 B
C++

#include <bits/stdc++.h>
using namespace std;
int n, a[32][32], b[32][32];
int dx[] = {0, -1, 1, 0, 0};
int dy[] = {0, 0, 0, -1, 1};
void dfs(int x, int y) {
if (x < 0 || x > n + 1 || y < 0 || y > n + 1 || b[x][y] != 0) {
return;
}
b[x][y] = 2;
for (int i = 1; i <= 4; i++) {
dfs(x + dx[i], y + dy[i]);
}
}
int main() {
cin >> n;
for (int i = 1; i <= n; i++) {
for (int j = 1; j <= n; j++) {
cin >> a[i][j];
if (a[i][j] == 0) {
b[i][j] = 0;
}
else {
b[i][j] = 1;
}
}
}
dfs(0, 0);
for (int i = 1; i <= n; i++) {
for (int j = 1; j <= n; j++) {
if (b[i][j] == 2) {
cout << "0 ";
}
else if (b[i][j] == 0) {
cout << "2 ";
}
else {
cout << "1 ";
}
}
cout << endl;
}
return 0;
}