Pagini recente » Cod sursa (job #1650523) | Cod sursa (job #1041786) | Cod sursa (job #2462996) | Cod sursa (job #299801) | Cod sursa (job #2347653)
#include <fstream>
#include <iostream>
#include <cmath>
using namespace std;
ifstream f("flip.in");
ofstream g("flip.out");
int a[20][20], n, m;
long long sol;
void flipLine(int i)
{
for(int j=1; j<=m; j++)
{
a[0][j] -= a[i][j];
a[i][j] = -a[i][j];
a[0][j] += a[i][j];
}
}
int main()
{
f >> n >> m;
for(int i=1; i<=n; i++)
for(int j=1; j<=m; j++)
{ f >> a[i][j];
a[0][j]+=a[i][j];
}
for(int i=0; i<(1<<n); i++)
{
long long s = 0;
for(int j=0; j<n; j++) if(i & (1<<j)) flipLine(j+1);
for(int j=1; j<=m; j++) s+=abs(a[0][j]);
for(int j=0; j<n; j++) if(i & (1<<j)) flipLine(j+1);
sol = max(sol, s);
}
g << sol << '\n';
return 0;
}