Pagini recente » Cod sursa (job #2321242) | Cod sursa (job #1966998) | Cod sursa (job #528775) | Cod sursa (job #2551899) | Cod sursa (job #108772)
Cod sursa(job #108772)
#include <stdio.h>
int main()
{
long long sum,max,i,j,k,n,m,p,q,s1,s2;
long long b[20][20],a[20][20];
long long back[20];
freopen("flip.in","r",stdin);
freopen("flip.out","w",stdout);
scanf("%lld%lld",&n,&m);
for (i=1; i<=n; i++)
for (j=1; j<=m; j++)
scanf("%lld",&a[i][j]);
for (i=1; i<=n; i++)
back[i]=0;
back[n]=-1;
max=0;
for (i=1; i<=(1<<n)-1; i++)
{
back[n]++;
for (j=n; j>=1; j--)
if (back[j]>2)
{
back[j]=0;
back[j-1]++;
}
else break;
for (p=1; p<=n; p++)
for (q=1; q<=m; q++)
if (back[p]==0) b[p][q]=a[p][q];
else b[p][q]=-a[p][q];
sum=0;
for (q=1; q<=m; q++)
{
s1=0;s2=0;
for (p=1; p<=n; p++)
{
s1+=b[p][q];
s2+=-b[p][q];
}
if (s1>s2) sum+=s1;
else sum+=s2;
}
if (sum>max) max=sum;
}
printf("%lld\n",max);
return 0;
}