Pagini recente » Cod sursa (job #2834845) | Cod sursa (job #892451) | Cod sursa (job #3168148) | Cod sursa (job #2086247) | Cod sursa (job #2562069)
#include <bits/stdc++.h>
using namespace std;
int n, m, v[20][20], ans = INT_MIN, sum, lin[20], col[20], T;
int main(){
ifstream cin("flip.in");
ofstream cout("flip.out");
cin >> n >> m;
for(int i = 1; i <= n; ++i)
for(int j = 1; j <= m; ++j)
cin >> v[i][j];
int c1 = 1 << n, c2 = 1 << m;
for(int i = 0; i < c1; ++i){
memset(lin, 0, sizeof lin);
for(int i2 = 0; i2 < n; ++i2)
if((i >> i2) & 1)
lin[i2 + 1] = 1;
for(int j = 0; j < c2; ++j){
memset(col, 0, sizeof col);
for(int j2 = 0; j2 < m; ++j2)
if((j >> j2) & 1)
col[j2 + 1] = 1;
sum = 0;
for(int x = 1; x <= n; ++x){
for(int y = 1; y <= m; ++y){
T = v[x][y];
if(lin[x]) T = -T;
if(col[y]) T = -T;
sum += T;
}
}
ans = max(ans, sum);
}
}
cout << ans << '\n';
}