Cod sursa(job #577548)

Utilizator stefan.friptuPetru Stefan Friptu stefan.friptu Data 10 aprilie 2011 13:22:24
Problema Jocul Flip Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.58 kb
#include <fstream>
#include <cstdlib>
#define N_MAX 17
#define oo 1<<29

using namespace std;
int v[N_MAX][N_MAX];
int main( void )
{
	int N, M, smax=-oo, i, j, k, till;
	ifstream in( "flip.in" );
	in>>N>>M;
	for( i=1; i <= N; ++i )
		for( j=1; j <= M; ++j )
			in>>v[i][j];
	till=1<<M;
	for( k=0; k <= till; ++k )
	{
		int st=0;
		for( i=1; i <= N; ++i )
		{
			int s=0;
			for( j=1; j <= M; ++j )
				if( k & (1<<j) )
					s+=(-1)*v[i][j];
				else s+=v[i][j];
			st+=( s >= 0 ? s : -s );
		}
		smax=max( smax, st );
	}
	ofstream out( "flip.out" );
	out<<smax<<'\n';
	return EXIT_SUCCESS;
}