Pagini recente » Cod sursa (job #2667457) | Cod sursa (job #2173190) | Cod sursa (job #42599) | Cod sursa (job #2888094) | Cod sursa (job #487401)
Cod sursa(job #487401)
#include <cstdio>
#include <cstdlib>
#include <iostream>
#define NMAX 17
using namespace std;
int main()
{
FILE *f, *g;
f = fopen("flip.in", "rt");
g = fopen("flip.out", "wt");
int i, j, k, l, n, h, m, x, sum, total_sum, max, dmax;
int a[NMAX][NMAX];
int b[NMAX][NMAX];
fscanf (f, "%d%d", &n, &m);
for (i = 0; i < n; i++)
for (j = 0; j < m; j++)
fscanf (f, "%d", &a[i][j]);
max = -1;
dmax = 1 << n;
for (h = 0; h < dmax; h++) {
total_sum = 0;
for (i = 0; i < n; i++) {
if ((h & (1 << i)) > 0) {
for (k = 0; k < m; k++) {
b[i][k] = -a[i][k];
}
}
else {
for (k = 0; k < m; k++) {
b[i][k] = a[i][k];
}
}
}
for (j = 0; j < m; j++) {
sum = 0;
for (l = 0; l < n; l++) {
sum += b[l][j];
}
if (sum < 0)
total_sum += -sum;
else
total_sum += sum;
}
if (total_sum > max) {
max = total_sum;
}
}
fprintf(g, "%d", max);
fclose(f);
fclose(g);
return 0;
}