Pagini recente » Cod sursa (job #1120581) | Cod sursa (job #2438642) | Cod sursa (job #645653) | Cod sursa (job #2306496) | Cod sursa (job #477932)
Cod sursa(job #477932)
#include <cstdio>
int n,m,v[20],s[20],a[20][20],max=-765878,s2[20];
int main()
{
int sum,k,i,j;
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]);s[j]+=a[i][j];s[0]+=a[i][j];s2[j]-=a[i][j];}
sum=s[0];
for (;;)
{
for (i=1;i<=m;++i)
if (v[i]==0) {v[i]=1;sum+=s2[i]-s[i];break;} else v[i]=0,sum+=s[i]-s2[i];
if (i>m) break;
int k=sum;
for (i=1;i<=n;++i)
{
int sl=0,sl2=0;
for (j=1;j<=m;++j)
if (!v[j]) sl+=a[i][j],sl2-=a[i][j]; else
sl2+=a[i][j],sl-=a[i][j];
if (sl2>sl) k+=sl2-sl;
}
if (k>max)
max=k;
}
printf("%d",max);
return 0;}