Cod sursa(job #915923)

Utilizator Pop_EmilPal Tamas Pop_Emil Data 15 martie 2013 15:46:06
Problema Jocul Flip Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.74 kb
#include <stdio.h>
#include <limits.h>
#include <stdlib.h>
using namespace std;

int n,m,t[17][17],v[17];

long REZ=LONG_MIN,s,p;

void _read()
{
 freopen("flip.in","r",stdin);
 freopen("flip.out","w",stdout);

 scanf("%d %d",&n,&m);

 for(int i=0;i<n;i++)
  for(int j=0;j<m;j++)
    scanf("%d",&t[i][j]);
}

void backtr(int k)
{
   if(k==m)
    {
       s=0;
       for(int i=0;i<n;i++)
       {
          p=0;
          for(int j=0;j<m;j++)
            p+=t[i][j]*v[j];

            if(p<0)s-=p;
                else s+=p;
       }

       if(REZ<s)REZ=s;
       return;
    }

   v[k]=1;
   backtr(k+1);
   v[k]=-1;
   backtr(k+1);

}

int main()
{
_read();

 backtr(0);
printf("%ld",REZ);
return 0;
}