Cod sursa(job #927532)

Utilizator shiftcrissCeica Cristian shiftcriss Data 25 martie 2013 20:59:01
Problema Jocul Flip Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.79 kb
#include<stdlib.h>
#include<stdio.h>

int n,m,a[17][17],i,j,x[257];
long sum,maxi;



void operare()
{
	for(int l = 0; l < m; l++) {
		int xx = 0;
		for(int k = 0; k < n; k++) 
			if(x[k+1] == 1) 
					xx += -1*a[k][l];
		     else xx += a[k][l];
		sum += abs(xx);
	}
			
	if(sum > maxi)
		maxi = sum;
	sum = 0;
}

void bk(int k)
{  int i;
   for(i = 0; i <= 1; i++)
      { x[k] = i;
        if (k == n) operare();
           else bk(k+1);
      }
}

int main()
{	
	FILE*in,*out;
	in = fopen("flip.in","r");
	out = fopen("flip.out","w");
	fscanf(in,"%d",&n);
	fscanf(in,"%d",&m);
	for(i = 0; i < n; i++)
		for(j = 0; j < m; j++) 
			fscanf(in,"%d",&a[i][j]);
	if(n > 0 && m > 0) 
		bk(1);
		
			
	fprintf(out,"%d",maxi);
	fclose(in);
	fclose(out);
	return 0;
}