Cod sursa(job #66110)

Utilizator lostBlanaru Adina lost Data 15 iunie 2007 19:02:37
Problema Jocul Flip Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.78 kb
#include<stdio.h>
long i,j,n,st[100],max,m,a[20][20];
void suma(int k)
{
long x,y,sum=0,col[20];
int viz[20];
for(x=1;x<=20;x++)
    col[x]=viz[x]=0;
for(x=1;x<=k;x++)
   viz[st[k]]=1;
for(y=1;y<=m;y++)
      for (x=1;x<=n;x++)
	 if (viz[x]==0)
	    col[y]+=a[x][y];
	      else
		 col[y]=col[y]-a[x][y];
for(x=1;x<=m;x++)
    {
    if(col[x]<0)
       col[x]=-col[x];
    sum+=col[x];
    }
if(max<sum)
   max=sum;

}
void back(int k)
{
long p;
for(p=st[k-1]+1;p<=n;p++)
	{
	st[k]=p;
	suma(k);
	back(k+1);
	}
}

int main()
{
freopen("flip.out","w",stdout);
freopen("flip.in","r",stdin);
scanf("%ld%ld",&n,&m);
for(i=1;i<=n;i++)
   for(j=1;j<=m;j++)
      scanf("%ld",&a[i][j]);
//suma linii

st[0]=0;
back(1);
printf("%ld\n",max);
return 0;
}