1
class Solution {
2
public int matrixScore(int[][] grid) {
3
ArrayList<Integer> arr = new ArrayList<Integer>();
4
for (int i = 0; i < grid.length; i++) {
5
boolean flip = false;
6
if (grid[i][0] == 0) {
7
grid[i][0] ^= 1;
8
flip = true;
9
}
10
if (flip) {
11
for (int j = 1; j < grid[0].length; j++) {
12
grid[i][j] ^= 1;
13
}
14
}
15
}
16
for (int i = 1; i < grid[0].length; i++) {
17
int zero = 0;
18
int one = 0;
19
for (int j = 0; j < grid.length; j++) {
20
if (grid[j][i] == 0) {
21
zero++;
22
} else {
23
one++;
24
}
25
}
26
if (zero > one) {
27
arr.add(i);
28
}
29
}
30
for (int i : arr) {
31
for (int j = 0; j < grid.length; j++) {
32
grid[j][i] ^= 1;
33
}
34
}
35
int sum = 0;
36
for (int i = 0; i < grid.length; i++) {
37
String num = "";
38
for (int j = 0; j < grid[0].length; j++) {
39
num += String.valueOf(grid[i][j]);
40
}
41
sum += Integer.valueOf(num, 2);
42
}
43
return sum;
44
}
45
}

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0