Pagini recente » Cod sursa (job #587439) | Cod sursa (job #201254) | Cod sursa (job #370636) | Cod sursa (job #1121791) | Cod sursa (job #2061874)
#include <bits/stdc++.h>
using namespace std;
int ma[20][20], maxs = 0, cl[20][20], bad[20], suma = 0, n, m, s, i, j;
int comp(int x, int y) {
if (x >= y)
return x ;
else
return y; }
void flip () {
suma = 0;
for (i = 1; i <= n; i++) {
if (bad[i] == false)
for (j = 1; j <= m; j++)
cl[i][j] = ma[i][j];
else
for (j = 1; j <= m; j++)
cl[i][j] = -1 * ma[i][j]; }
for (j = 1; j <= m; j++) {
s = 0;
for (i = 1; i <= n; i++)
s = s + cl[i][j];
if (s > 0)
suma = suma + s;
else
suma = suma - s; }
maxs = comp(maxs, suma); }
void q(int w) {
if (w > n) {
flip();
return ; }
bad[w] = 0;
q(w + 1);
bad[w] = 1;
q(w + 1); }
int main() {
freopen("flip.in", "r", stdin);
freopen("flip.out", "w", stdout);
scanf("%d", &n);
scanf("%d", &m);
for (i = 1; i <= n; i++)
for ( j = 1; j <= m; j++)
scanf("%d", &ma[i][j]);
q(1);
printf("%d", maxs);
return 0; }