Cod sursa(job #415898)

Utilizator lucibitLucian Onea lucibit Data 11 martie 2010 22:15:06
Problema Jocul Flip Scor 100
Compilator c Status done
Runda Arhiva de probleme Marime 0.62 kb
#include<stdio.h>
#include<stdlib.h>

int a[16][16];

int main(){

int i,j,N,M,max,perm,sum,ok,test;

FILE *f = fopen("flip.in","r");
fscanf(f,"%d %d\n",&N,&M);
for(i=0;i<N;i++)
	for(j=0;j<M;j++){
	fscanf(f,"%d",&a[i][j]);	
}

int lim=1<<(M+1);
int line=0;

max=0;	

for(i=0;i<N;i++)
	for(j=0;j<M;j++) max+=a[i][j];

for(perm=0;perm<lim;perm++){
	sum=0;
	for(i=0;i<N;i++){
		line=0;
		for(j=0;j<M;j++){
			test=perm & (1<<j);
			if(test) line-=a[i][j];
			else line+=a[i][j];
		}
		if(line>0) sum+=line;
		else sum-=line;		
		}
	if(sum>max) max=sum;					
}
fclose(f);

f=fopen("flip.out","w");

fprintf(f,"%d\n",max);


return 0;}