Cod sursa(job #563595)

Utilizator t2011tVasilescu Popescu t2011t Data 25 martie 2011 15:15:59
Problema Jocul Flip Scor 70
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.74 kb
#include <stdio.h>

int max=-9999999,n,m,a[20][20];
int global[21];
int d[2]={-1,1};

void back(int nivel);
void calc();

int main()
{
FILE *in,*out;
in=fopen("flip.in","rt");
out=fopen("flip.out","wt");

fscanf(in,"%d%d",&n,&m);
int i1,i2;
for(i1=0;i1<n;i1++)
	for(i2=0;i2<m;i2++)
		fscanf(in,"%d",&a[i1][i2]);

back(1);

fprintf(out,"%d",max);

fclose(in);
fclose(out);
return 0;
}

void back(int nivel)
{
int i1;
for(i1=0;i1<2;i1++)
	{
	global[nivel]=d[i1];
	if(nivel==n)
		calc();
	else
		back(nivel+1);
	}
}

void calc()
{
int i1,i2,s,total=0;
for(i1=0;i1<n;i1++)
	{
	s=0;
	for(i2=0;i2<m;i2++)
		s+=(a[i1][i2]*global[i2+1]);
	if(s<0)
		s*=(-1);
	total+=s;
	}

if(max<total)
	{
	max=total;
	}
}