Cod sursa(job #129183)

Utilizator DITzoneCAdrian Diaconu DITzoneC Data 28 ianuarie 2008 18:58:57
Problema Jocul Flip Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.67 kb
#include <stdio.h>

int n,m,a[20][20],st[20],sol;

void verif()
  {
     int i,j,aux,tot;
     for(tot=0,i=0;i<n;i++)
       {
	 for(j=0,aux=0;j<m;j++)
	   aux+=st[j]*a[i][j];
	 tot+=((aux>0)?aux:-aux);
       }
     if(tot>sol) sol=tot;
  }

void back(int i)
  {
     if(i<m)
       {
	  st[i]=1;
	  back(i+1);
	  st[i]=-1;
	  back(i+1);
       }
     else verif();
  }

int main ()
  {
     FILE *fi=fopen("flip.in","r"),
	  *fo=fopen("flip.out","w");
     int i,j;
     fscanf(fi,"%d %d",&n,&m);
     sol=-1;
     for(i=0;i<n;i++)
       for(j=0;j<m;j++)
	 fscanf(fi,"%d",&a[i][j]);
     back(0);
     fprintf(fo,"%d",sol);
     return(0);
  }