Cod sursa(job #112792)

Utilizator SharpeBigadrian ursulescu SharpeBig Data 7 decembrie 2007 17:44:22
Problema Jocul Flip Scor 70
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.7 kb
#include <iostream>
#include <fstream>
using namespace std;

int A[20][20],S[20][20]={0},i,j,n,m,rezultat=-256*1000*1000;
   int abs(int a) { return a>-a? a: -a;}
   void back(int niv)
   { 
     if (niv==n+1)
     { int acum=0;
       for(i=1;i<=m;acum+=abs(S[n][i++]));
       if(acum>rezultat) rezultat=acum;
     } else
     { for(i=1;i<=n;S[niv][i]=S[niv-1][i]+A[niv][i],i++);
       back(niv+1);
       for(i=1;i<=n;S[niv][i]=S[niv-1][i]-A[niv][i],i++);
       back(niv+1);
     }
   }
int main()
{ ifstream fin("flip.in");
  ofstream fout("flip.out"); 
  fin>>n>>m;for(i=1;i<=n;i++) for(j=1;j<=m;fin>>A[i][j++]);
  back(1);
  fout<<rezultat;
  fin.close();fout.close();
  return 0;
}