Cod sursa(job #729037)

Utilizator mattapoMatei Apolzan mattapo Data 29 martie 2012 10:50:06
Problema Jocul Flip Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.72 kb
#include<stdio.h>
int v[17],total=0,max=0,a[17][17],m,n;
void prelucrare (int p)
{
	int i,j,coptotal=total;
	for (i=1;i<=p;i++)
		coptotal=coptotal-(2*a[0][v[i]]);
	for (i=1;i<=n;i++)
	{
		if (a[i][0]<0)
			coptotal=coptotal-(2*a[i][0]);
	}
	if (max<coptotal)
		max=coptotal;
}
void bkt (int p)
{
	int i;
	prelucrare(p-1);
	for (i=1+v[p-1];i<=m;i++)
	{
		v[p]=i;
		bkt(p+1);
	}
}
int main ()
{
	int 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]);
			a[i][0]=a[i][0]+a[i][j];
			a[0][j]=a[0][j]+a[i][j];
			total=total+a[i][j];
		}
	bkt(1);
	printf("%d",max);
	return 0;	
}