Cod sursa(job #216861)

Utilizator Bogdan_tmmTirca Bogdan Bogdan_tmm Data 25 octombrie 2008 23:49:23
Problema Jocul Flip Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.67 kb
#include<iostream>
#include<stdio.h>
long a[17][17],max;
unsigned short m,n,st[17];
FILE *f,*g;
void suma()
{ unsigned short i,j;
  long s=0,s1;
 for(j=1;j<=n;j++)
 {
	 s1=0;
	 for(i=1;i<=m;i++)
		 s1+=a[i][j]*st[i];
	 s=(s1>0)?(s+s1):(s-s1);
 }
 max=(max>s)?max:s;
}
void back(int p)
{
	int i;
	for(i=-1;i<=1;i+=2)
	{
		st[p]=i;
		if(p==m)
			suma();
		else
			back(p+1);
	}
}
int main()
{   max=-30000;
	f=fopen("flip.in","r");
	g=fopen("flip.out","w");
	fscanf(f,"%d %d\n",&m,&n);
	for(unsigned short i=1;i<=m;i++)
		for(unsigned short j=1;j<=n;j++)
			fscanf(f,"%ld",&a[i][j]),max+=a[i][j];
	back(1);
	fprintf(g,"%ld",max);
	return 0;
}