Cod sursa(job #129443)

Utilizator mirceadinoMircea Popoveniuc mirceadino Data 29 ianuarie 2008 15:25:42
Problema Jocul Flip Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.93 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);     
  }