Cod sursa(job #456880)

Utilizator LauraTudorTudor Laura LauraTudor Data 17 mai 2010 00:17:12
Problema Jocul Flip Scor 40
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.64 kb
#include<stdlib.h>
#include<stdio.h>

long f[16][16],max=-1000000;
int n,m,sum=0,a[32];
void back(int a[16],int k){
	int i,j;
	if(k==n+m)
	{
		sum=0;
		for(i=0;i<n;i++)
			for(j=0;j<m;j++)
				if(a[i]==a[n+j])
					sum=sum+f[i][j];
				else
					sum=sum-f[i][j];
		if(sum>max)
		max=sum;
	}
	else
		for(i=0;i<2;i++)
		{
			a[k]=i;
			back(a,k+1);
		}
}

int main(){
	int i,j;
	FILE *fin=fopen("flip.in","r");
	FILE *fout=fopen("flip.out","w");
	fscanf(fin,"%d %d",&n,&m);
	for(i=0;i<n;i++)
		for(j=0;j<m;j++)
			fscanf(fin,"%ld",&f[i][j]);
	back(a,0);
	fprintf(fout,"%ld",max);
	fclose(fin);
	fclose(fout);
	return 0;
}