Cod sursa(job #553440)

Utilizator cameleonGeorgescu Dan cameleon Data 14 martie 2011 04:20:36
Problema Jocul Flip Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.78 kb
#include<fstream>
using namespace std;
ifstream f("flip.in");
ofstream g("flip.out");
int a[17][17],s[17],n,m,stot,smax;
void citire()
{
	int i,j;
	f>>n>>m;
	for(i=1;i<=n;i++)
	{
		for(j=1;j<=m;j++)
		{
			f>>a[i][j];
			s[i]=s[i]+a[i][j];
		}
		
	}
}
void coloane()
{
	int i,j,s1;
	for(j=1;j<=m;j++)
	{
		s1=0;
		for(i=1;i<=n;i++)
			s1=s1+a[i][j];
		if(s1<0){s1=-s1;
			for(i=1;i<=n;i++)
			a[i][j]=-a[i][j];
		}
		stot+=s1;
	}
}
		
void submultimi()
{
	int i,nr,x,k,stot1;
	nr=1<<m;smax=stot;
	for(i=1;i<=nr;i++)
	{
		stot1=stot;
		x=i;k=1;
		while(x!=0)
		{
			if(x%2==1)
				stot1=stot1-2*s[k];
			x=x/2;k=k+1;
		}
		if(stot1>smax) smax=stot1;
	}
}
	
int main()
{
	citire();
	coloane();
	submultimi();
	g<<smax;
	return 0;
	
}