blob: 6b49d5df54753b210cfea7a172bd29d4939a5df7 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
#include<bits/stdc++.h>
using namespace std;
bool safeMove(int i, int j) {
if(i < 0 || i > 2 || j < 0 || j > 2) {
return false;
}
return true;
}
vector<vector<int>> sumAdjacents(vector<vector<int>> v) {
vector<vector<int>> ans(3, vector<int> (3));
vector<int> dx = {1, 0, -1, 0};
vector<int> dy = {0, 1, 0, -1};
for(int i = 0; i < v.size();i++) {
for(int j = 0; j < v[i].size(); j++) {
ans[i][j] += v[i][j];
for(int k = 0; k < 4; k++) {
int x = i + dx[k];
int y = j + dy[k];
if(safeMove(x, y)) {
ans[i][j] += v[x][y];
}
}
(ans[i][j] & 1) ? ans[i][j] = 0 : ans[i][j] = 1;
}
}
return ans;
}
int main () {
ios_base::sync_with_stdio(false);
cin.tie(NULL);
vector<vector<int>> v (3, vector<int> (3));
for(auto &x : v) {
for(auto &y : x) {
cin >> y;
}
}
for(auto x : sumAdjacents(v)) {
for(auto z : x) {
cout << z;
}
cout << endl;
}
}
|