Pagini recente » Cod sursa (job #3206902) | Cod sursa (job #523209) | Cod sursa (job #445119) | Cod sursa (job #136173) | Cod sursa (job #852596)
Cod sursa(job #852596)
#include <cstdio>
using namespace std;
int n, m, i, j, a[17][17], S, smax, x[100000], k;
void rezolva ()
{ int S = 0, s, i, j;
for (i = 1; i <= n; ++i)
{ s = 0;
for (j = 1; j <= m; ++j)
if (x[j]) s -= a[i][j]; else s += a[i][j];
if (s < 0) S -= s; else S += s;
}
if (S > smax) smax = S;
}
void back ()
{ k = 1; x[k] = -1;
do
{ while (x[k] < 1)
{ x[k]++;
if (k == m) rezolva (); else x[++k] = -1;
}
k--;
} while (k);
}
int main ()
{ freopen ("flip.in", "rt", stdin);
freopen ("flip.out", "wt", stdout);
scanf ("%d%d", &n, &m);
for (i = 1; i <= n; ++i) for (j = 1; j <= m; ++j) scanf ("%d", &a[i][j]);
back ();
printf ("%d\n", smax);
return 0;
}