Cod sursa(job #864125)

Utilizator Andrei1998Andrei Constantinescu Andrei1998 Data 24 ianuarie 2013 18:09:22
Problema Jocul Flip Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.81 kb
#include <fstream>

using namespace std;

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

int v[16][16];
int n,m;
int maxim,minus_linie[16];

void coloane()
{
	int suma=0,curent=0,i,j;
	for(j=0;j<m;j++)
	{		curent=0;//coloane
		for(i=0;i<n;i++)
			if(minus_linie[i])
		curent-=v[i][j];
			else
		curent+=v[i][j];//linii
			if(curent>0)
		suma+=curent;
			else suma-=curent;
	}
	
	if(suma>maxim)
		maxim=suma;
}

void back_linie(int poz)
{
    if(poz==n)
		coloane();
	
	back_linie(poz+1);
		
	minus_linie[poz]=1;
	back_linie(poz+1);
	minus_linie[poz]=0;
}


int main()
{
	int i,j;
	fin>>n>>m;
	maxim=-256000256; //mai mult trebuie
	for(i=0;i<n;i++)
		for(j=0;j<m;j++)
			fin>>v[i][j];
		back_linie(0);
	fout<<maxim<<'\n';
	
	fin.close();
	fout.close();
	
	return 0;
}