Pagini recente » Cod sursa (job #532380) | Cod sursa (job #1128974) | Cod sursa (job #1453345) | Cod sursa (job #1285396) | Cod sursa (job #108769)
Cod sursa(job #108769)
#include <stdio.H>
int main()
{
int sum,max,i,j,k,n,m,p,q,s1,s2;
int b[20][20],a[20][20];
int back[20];
freopen("flip.in","r",stdin);
freopen("flip.out","w",stdout);
scanf("%d%d",&n,&m);
for (i=1; i<=n; i++)
for (j=1; j<=m; j++)
scanf("%d",&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("%d\n",max);
return 0;
}