Cod sursa(job #938191)

Utilizator raulstoinStoin Raul raulstoin Data 11 aprilie 2013 23:41:05
Problema Jocul Flip Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.71 kb
#include<fstream>
using namespace std;
int a[17][17],n,m,maxim=-(1<<30);
bool v[257];
int abs(int a)
{
	if(a<0)
		return -a;
	return a;
}
void read()
{
	ifstream fin("flip.in");
	fin>>n>>m;
	for(int i=1;i<=n;i++)
		for(int j=1;j<=m;j++)
			fin>>a[i][j];
	fin.close();
}
void solve()
{
	int s=0;
	for(int j=1;j<=m;j++)
	{
		int sum=0;
		for(int i=1;i<=n;i++)
			if(v[i])
				sum+=-a[i][j];
			else
				sum+=a[i][j];
		s+=abs(sum);
	}
	if(maxim<s)
		maxim=s;
}
void back(int k)
{
	for(int i=0;i<=1;i++)
	{
		v[k]=i;
		if(k==n)
			solve();
		else
			back(k+1);
	}
}
int main()
{
	read();
	back(1);
	ofstream fout("flip.out");
	fout<<maxim<<'\n';
	fout.close();
	return 0;
}