Cod sursa(job #155959)

Utilizator mircea_infoSuciu Mircea-Gabriel mircea_info Data 12 martie 2008 11:46:49
Problema Jocul Flip Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.65 kb
#include <stdio.h>
#include <math.h>
	
int n,m;
int a[20][20];
int c;
long smx=0;
void flip () {
	int i,j;
	int s1,s2,sm3=0;
	for (i=0; i<m; i++) {
		s1=0;
		s2=0;
		for (j=0; j<n; j++) {
			if (c&1<<j)
                 s1+=a[j][i]*(-1); 
            else  s1+=a[j][i]; 
        }
		s2=-s1;
		sm3+=(s1>s2?s1:s2);
	}
	smx=(sm3>smx?sm3:smx);
}

int main (){
	freopen("flip.in","r",stdin);
	freopen("flip.out","w",stdout);
	scanf("%d %d",&n,&m);
	int i,j;
	for (i=0; i<n; i++){
		for (j=0; j<m; j++){
			scanf("%d",&a[i][j]);
		}
	}
	for (c=0; c<pow(2,n-1); c++){
		flip();
	}
	printf("%ld",smx);
	fclose(stdout);
	return 0;
}