Cod sursa(job #773492)

Utilizator JaninaBratu Janina Ninetta Janina Data 1 august 2012 20:36:02
Problema Jocul Flip Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.79 kb
#include<stdio.h>
FILE *fin=fopen("flip.in", "r");
FILE *fout=fopen("flip.out", "w");
int n,m,i,j;
int suma,sumamax;
int a[20][20], v[20];
void calcul(){
	suma=0;
	int aux[20];
	for (i=1; i<=m; i++)
		aux[i]=0;
	for (i=1; i<=n; i++)
		for (j=1; j<=m; j++)
			aux[j]+=a[i][j]*v[i];
	for (i=1; i<=m; i++)
		if (aux[i]<0)
			suma+=aux[i]*(-1);
		else
			suma+=aux[i];
	if (suma>sumamax)
		sumamax=suma;
	
}
void bkt(int k){
	if (k==n+1)
		calcul();
	else
	{
		v[k]=-1;
		bkt(k+1);
		v[k]=1;
		bkt(k+1);
	}
}
int main(){
	fscanf(fin, "%d", &n);
	fscanf(fin, "%d", &m);
	
	for (i=1; i<=n; i++)
		for (j=1; j<=m; j++)
		{
			fscanf(fin, "%d", &a[i][j]);
			sumamax+=a[i][j];
		}
	bkt(1);
	fprintf(fout, "%d", sumamax);
	
	fclose(fin);
	fclose(fout);
	return 0;
	
}