Cod sursa(job #844033)

Utilizator FlameingoAiordachioaei Marius Flameingo Data 28 decembrie 2012 19:02:26
Problema Jocul Flip Scor 40
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.59 kb
#include<cstdio>
using namespace std;
int abs(int a)
{
	if(a<0)
		return -a;
	return a;
}
int main()
{
	freopen("flip.in","r",stdin);freopen("flip.out","w",stdout);
	int bin1=0,bin2,lim1,lim2,m,n,i,j,a[17][17],t=0,maxx=-2e9;
	scanf("%d%d",&n,&m);
	for(i=1;i<=n;++i)
		for(j=1;j<=m;++j)
			scanf("%d",&a[i][j]);
	lim1=1<<(n-1);lim2=1<<(m-1);
	for(;bin1<lim1;++bin1,t=0)
		for(bin2=0;bin2<lim2;++bin2,t=0)
		{
			for(i=0;i<n;i++)
				for(j=0;j<m;j++)
					((bin1>>i)&1)!=((bin2>>j)&1)?t-=a[i+1][j+1]:t+=a[i+1][j+1];
			if(abs(t)>maxx)
				maxx=abs(t);
		}
	printf("%d",maxx);
}