Cod sursa(job #1639395)

Utilizator adu18sptAndrei Mircea adu18spt Data 8 martie 2016 12:09:52
Problema Jocul Flip Scor 40
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.82 kb
#include<fstream>
using namespace std;
ifstream fin("flip.in");
ofstream fout("flip.out");
int n,m,v[17][17],a[17]={1},aux[17][17],x,i,j,z,maxsum=-1000000,sum;

void rez()
{
	sum=0;
	for(i=1;i<=x;i++)
	{
		if(a[i]==-1)
		{
			if(i<=n)
			{
				for(j=1;j<=m;j++)
				{
					v[i][j]*=a[i];
				}
			}
			else
			{
				for(z=1;z<=n;z++)
				{
					v[z][i-n]*=a[i];
				}
			}
		}
	}
	for(i=1;i<=n;i++)
	{
		for(j=1;j<=m;j++)
		{
			sum+=v[i][j];
			v[i][j]=aux[i][j];
		}
	}	
	if(maxsum<sum)
	{
		maxsum=sum;
	}
}



int main()
{
	fin>>n>>m;
	for(i=1;i<=n;i++)
	{
		for(j=1;j<=m;j++)
		{
			fin>>v[i][j];
			aux[i][j]=v[i][j];
		}
	}
	x=m+n;
	while(a[0]==1)
	{
		i=x;
		while(a[i]==-1)
		{
			a[i]=1;
			i--;
		}
		a[i]=-1;
		rez();
	}
	
	fout<<maxsum<<"\n";
	return 0;
}