Cod sursa(job #808738)
#include<stdio.h>
int a[20][20];
bool v[40];
int main()
{
freopen("flip.in","r",stdin);
freopen("flip.out","w",stdout);
int n,m,i,j;
long s,max;
bool t;
max=0;
scanf("%d%d",&n,&m);
for(i=1;i<=n;i++)
for(j=1;j<=m;j++)
scanf("%d",&a[i][j]);
do
{
t=1;
s=0;
for(i=n+m;i>=1;i--)
if(v[i]==0)
{
v[i]=1;
break;
}
for(j=i+1;j<=n+m;j++)
v[j]=0;
for(i=1;i<=n;i++)
for(j=1;j<=m;j++)
if(v[i]==v[n+j])
s=s+a[i][j];
else
s=s+-1*a[i][j];
for(i=1;i<=n+m;i++)
if(v[i]==0)
t=0;
if(s>max)
max=s;
}while(t==0);
printf("%ld",max);
return 0;
}