Cod sursa(job #784288)

Utilizator adascaluAlexandru Dascalu adascalu Data 5 septembrie 2012 15:01:37
Problema Jocul Flip Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.68 kb
using namespace std;
#include<fstream>
long long smax=-(1<<64),s;
int i,j,n,m,a[17][17],st[17];
void check();
void bkt(int k)
{
	if(k>n)
		check();
	else
	{
		st[k]=0;
		bkt(k+1);
		st[k]=1;
		bkt(k+1);
	}
}
void check()
{
	s=0;
	int stst[17][17];
	for(int k=1;k<=n;k++)
		for(int l=1;l<=m;l++)
			stst[k][l]=st[k]*st[l];
	for(int i=1;i<=n;i++)
		for(int j=1;j<=m;j++)
			if(stst[i][j])
				s+=(-1)*a[i][j];
			else
				s+=a[i][j];
	if(s>smax)
		smax=s;
}
int main ()
{
	ifstream f("flip.in");
	ofstream g("flip.out");
	f>>n>>m;
	for(int i=1;i<=n;i++)
		for(int j=1;j<=m;j++)
			f>>a[i][j],smax+=a[i][j];
	bkt(1);
	g<<smax;
	f.close();
	g.close();
}