Pagini recente » Cod sursa (job #2009424) | Cod sursa (job #1979513) | Cod sursa (job #1645382) | Cod sursa (job #217189) | Cod sursa (job #1982809)
#include<cstdio>
using namespace std;
unsigned int mask_i[17], mask_j[17];
int a[17][17];
int main() {
freopen("flip.in", "r", stdin);
freopen("flip.out", "w", stdout);
int n, m;
scanf("%d%d", &n, &m);
for(int i=1; i<=n; i++) mask_i[i] = 1 << (i - 1);
for(int j=1; j<=m; j++) mask_j[j] = 1 << (j + n - 1);
for(int i=1; i<=n; i++)
for(int j=1; j<=m; j++)
scanf("%d", &a[i][j]);
unsigned int idk = 1 << (n+m-1);
int max = -257000000;
do {
int s = 0;
for(int i = 1; i <= n; i++)
for(int j = 1; j <= m; j++)
s += a[i][j] * (((idk & mask_i[i])?1:0) * 2 - 1) * (((idk & mask_j[j])?1:0) * 2 - 1);
if(s > max) max = s;
idk--;
} while(idk != 4294967295);
printf("%d\n", max);
return 0;
}