1 class Solution
2 {
3 public:
4 int matrixScore(vector<vector<int>>& A)
5 {
6 for(int i = 0; i < A.size(); i ++)
7 {
8 if(A[i][0]==0)
9 {
10 for(int j = 0; j < A[i].size(); j ++)
11 {
12 A[i][j] = A[i][j] == 1 ? 0 : 1;
13 }
14 }
15 }
16
17 for(int j = 0; j < A[0].size(); j ++)
18 {
19 int zeroSum = 0;
20 int oneSum = 0;
21 for(int i = 0; i < A.size(); i ++)
22 {
23 if(A[i][j]==0)
24 {
25 zeroSum ++;
26 }
27 else
28 {
29 oneSum ++;
30 }
31 }
32 if(zeroSum > oneSum)
33 {
34 for(int i = 0; i < A.size(); i ++)
35 {
36 A[i][j] = A[i][j] == 1 ? 0 : 1;
37 }
38 }
39 }
40
41 int result = 0;
42 for(int i = 0;i < A.size();i ++)
43 {
44 int tmpResult = 0;
45 for(int j = 0;j < A[i].size();j ++)
46 {
47 if(A[i][j])
48 tmpResult += pow(2,A[i].size()-j-1);
49 }
50 result += tmpResult;
51 }
52 return result;
53 }
54 };