Cod sursa(job #448795)

Utilizator RazvanSSavu Razvan RazvanS Data 4 mai 2010 19:08:30
Problema Jocul Flip Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.66 kb
#include <iostream>
#include <fstream>

using namespace std;

#define file_in "flip.in"
#define file_out "flip.out"

#define NMAX 16
#define INF 0x3f3f3f3f

int N, M, A[NMAX][NMAX];

int main ( void ) {
	
	freopen(file_in,"r",stdin);
	freopen(file_out,"w",stdout);
	
	cin >> N >> M;
	for(int i=0;i<N;++i)
		for(int j=0;j<M;++j)
			cin >> A[i][j];
			
	int max;
	max = 1 << M ;
	int Smax = -INF;
	for(int p=0 ;p<max;++p) {
		int S = 0;
		for(int i=0;i<N;++i) {
			int Sl = 0;
			for(int b=1, j=0;j<M;b<<=1, ++j)
				if ( p&b ) Sl-=A[i][j];
				else Sl+=A[i][j]; 
			if ( Sl > 0 ) S+=Sl;
			else S-=Sl;
		}	
		if ( S > Smax ) Smax = S;
	}
	
	cout << Smax << endl;
}