Cod sursa(job #492250)

Utilizator raduspowertinca radu raduspower Data 13 octombrie 2010 21:45:58
Problema Jocul Flip Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.61 kb
#include <fstream>
using namespace std;

int v[17][17],m,n,maxim;
bool a[17];

ifstream in("flip.in");
ofstream out("flip.out");

void scout()
{
	int k=0,s,i,j;
	for (i=1;i<=n;i++)
	{
		s=0;
		for (j=1;j<=m;j++)
			if (a[j])
				s+=v[i][j];
			else
				s-=v[i][j];
		if (s>0)
			k+=s;
		else
			k-=s;
	}
	if (k>maxim)
		maxim=k;
}

void bkt(int p)
{
	if (p==m+1)
	{
		scout();
		return;
	}
	a[p]=false;
	bkt(p+1);
	a[p]=true;
	bkt(p+1);
}

int main()
{
	int i,j;
	in>>n>>m;
	for (i=1;i<=n;i++)
		for (j=1;j<=m;j++)
			in>>v[i][j];
	bkt(1);
	out<<maxim<<"\n";
	return 0;
}