Cod sursa(job #44751)

Utilizator razvannovaZegheanu Razvan - UPB razvannova Data 31 martie 2007 18:10:46
Problema Jocul Flip Scor 40
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.68 kb
#include <iostream.h>
#include <fstream.h>
int pow(int x)
{
	if (x==1)
		return -1;
	else
		return 1;
}
int main()
{
	int s,n,i,max,j,k,m,p,a[17][17],x[33];
	ifstream fin("flip.in");
	ofstream fout("flip.out");
	fin>>n>>m;
	max=-1;
	for (i=1;i<=n;i++)
		for (j=1;j<=m;j++)
			fin>>a[i][j];
	k=1; x[k]=-1;
	while (k>0)
	{
		p=0;
		while (x[k]<1 && p==0)
		{
			x[k]++;
			p=1;
		}
		if (p==0)
			k--;
		else
			if (k==n+m)
			{
				s=0;
				for (i=1;i<=n;i++)
					for (j=1;j<=m;j++)
						s+=a[i][j]*pow(x[i]+x[n+j]);
				if (s>max)
					max=s;
			}
			else
			{
				k++;
				x[k]=-1;
			}
	}
	fout<<max;
	fout.close();
	fin.close();
	return 0;
}