Cod sursa(job #322870)

Utilizator Anonymous1010Chilivercu Cristian Anonymous1010 Data 10 iunie 2009 09:28:03
Problema Jocul Flip Scor 30
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.61 kb
#include<stdio.h>

int a[16][16],n,m,b[32];
long smax,s;

void bk(int);

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]);

	smax=-2000000000;

	bk(1);

	printf("%d",smax);
}

void bk(int k)
{
	int aux,i,j;

	if(k<=n+m)
		for(aux=0;aux<=1;aux++)
		{
			b[k]=aux;
			bk(k+1);
		}
	else
	{
		s=0;

		for(i=1;i<=n;i++)
			for(j=1;j<=m;j++)
			{
				if(b[i]!=b[n+j])
					s+=-a[i][j];
				else
					s+=a[i][j];
			}

		if(s>smax)
			smax=s;
	}
}