Cod sursa(job #26837)

Utilizator Boss_2007Marian Ciprian Boss_2007 Data 5 martie 2007 21:50:40
Problema Jocul Flip Scor 70
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.74 kb
#include<stdio.h>
long int a[17][17],nl,nc,i,j,sm,aux,cod[17],sc,sl,p;
int main()
{
	FILE *f;
	f=fopen("flip.in","r");
	fscanf(f,"%ld%ld",&nl,&nc);
	if(nc>nl){for(i=1;i<=nl;i++)
		  for(j=1;j<=nc;j++)
		  {fscanf(f,"%ld",&a[j][i]);sm+=a[j][i];}
		  aux=nl;nl=nc;nc=aux;
		 }
	else
		 for(i=1;i<=nl;i++)
		 for(j=1;j<=nc;j++)
		 {fscanf(f,"%ld",&a[i][j]);sm+=a[i][j];}
	fclose(f);
	cod[1]=-1;
	for(j=2;j<=nc;j++)
	cod[j]=1;
	while(cod[nc]==1)
	{       sc=0;
		for(i=1;i<=nl;i++)
		{
			sl=0;
			for(j=1;j<=nc;j++)
			sl+=cod[j]*a[i][j];
			if(sl<0)sl=-sl;
			sc+=sl;
		}
		if(sc>sm)sm=sc;
		p=1;
		while(cod[p]==-1){cod[p]=1;p++;}
		cod[p]=-1;
	}
	f=fopen("flip.out","w");
	fprintf(f,"%ld\n",sm);
	fclose(f);
	return 0;
}