Pagini recente » Cod sursa (job #237003) | Cod sursa (job #38609) | Cod sursa (job #1239948) | Cod sursa (job #32993) | Cod sursa (job #670055)
Cod sursa(job #670055)
#include <iostream>
#include <cstdio>
using namespace std;
int h[40][40],n,m;
void f(int x)
{
for(int i=1;i<=m;i++)
{
if( ( (x>>(i-1)) & 1 ) == 1 )
{
for(int j=1;j<=n;j++)
h[j][i]*=-1;
}
}
}
void line(int l)
{
for(int i=1;i<=m;i++)
h[l][i]*=-1;
}
int s(int l)
{
int S=0;
for(int i=1;i<=m;i++)
S+=h[l][i];
return S;
}
int main()
{
int SUMA=0;;
freopen("flip.in","r", stdin);
freopen("flip.out","w", stdout);
scanf("%d %d",&n,&m);
for(int i=1;i<=n;i++)
for(int j=1;j<=m;j++)
scanf("%d",&h[i][j]);
for(int i=0;i<(1<<m);i++)
{
f(i);
int suma=0,a,b;
for(int j=1;j<=n;j++)
{
a=s(j);
line(j);
b=s(j);
line(j);
suma+=max(a,b);
}
SUMA=max(SUMA,suma);
f(i);
}
printf("%d",SUMA);
return 0;
}