Cod sursa(job #172687)

Utilizator codrinCodrin LACHE codrin Data 6 aprilie 2008 17:28:51
Problema Jocul Flip Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.77 kb
#include<stdio.h>

long a[20][20];
long long s;
int w[20],n,m;

void citire()
{
 freopen("flip.in","r",stdin);
 scanf("%d%d", &n, &m);
	for(int i=0;i<n;i++)
		for(int j=0;j<m;j++)
			scanf("%ld", &a[i][j]);
 fclose(stdout);
}

void verificare()
{
 int q,e=0;
	for(int j=0;j<m;j++)
		{
			q=0;
			for(int i=0;i<n;i++)
				q+=a[i][j]*w[i];
			if(q<0)
				q*=-1;
			e+=q;
		}
	if (e>s)
		s=e;
}

void back(int k)
{
	if(k>n-1)
		verificare();
	else
		{
			for(int i=0;i<=1;i++)
				{
					if(i==1)
						w[k]=i;
					else
						w[k]=-1;
				 back(k+1);
				}
		}
}

void afisare()
{
 freopen("flip.out","w",stdout);
	printf("%lld",s);
 fclose(stdout);
}

int main()
{
		citire();
	s=-2000000;
		back(0);
		afisare();
 return 0;
}