1
class Solution {
2
public:
3
int sum(vector<vector<int>> mat) {
4
int score = 0;
5

6
for (int i = 0; i < mat.size(); i++) {
7
int p = mat[0].size() - 1;
8
for (int j = 0; j < mat[0].size(); j++) {
9
score += mat[i][j] * pow(2, p);
10
p--;
11
}
12
}
13

14
return score;
15
}
16

17
int matrixScore(vector<vector<int>> &grid) {
18
// if(grid.size()==1){
19
// return ;
20
// }
21

22
for (int i = 0; i < grid.size(); i++) {
23
if (grid[i][0] == 0) {
24
for (int j = 0; j < grid[0].size(); j++) {
25
if (grid[i][j] == 0) {
26
grid[i][j] = 1;
27
} else {
28
grid[i][j] = 0;
29
}
30
}
31
}
32
}
33

34
vector<int> ind;
35

36
for (int i = 1; i < grid[0].size(); i++) {
37
int ct = 0;
38
for (int j = 0; j < grid.size(); j++) {
39
ct += grid[j][i];
40
}
41
if (ct <= grid.size() / 2) {
42
ind.push_back(i);
43
}
44
}
45
for (auto v : ind) {
46
cout << v << " ";
47
}
48

49
for (auto c : ind) {
50
for (int j = 0; j < grid.size(); j++) {
51
if (grid[j][c] == 0) {
52
grid[j][c] = 1;
53
} else {
54
grid[j][c] = 0;
55
}
56
}
57
}
58

59
return sum(grid);
60
}

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0