Cod sursa(job #335075)

Utilizator PavelRazvanPavel Razvan PavelRazvan Data 28 iulie 2009 16:46:53
Problema Jocul Flip Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.81 kb
#include<stdio.h>
#define DIM 101
int n,sol[DIM],m,a[DIM][DIM],max,s,j,i;
void calcul ()
{
     int s=0,j,i,sc;
     for(j=1;j<=m;++j)
     {
            sc=0;
            for(i=1;i<=n;++i)
				sc+=sol[i]*a[i][j];
            if(sc<0)
                s+=(-sc);
            else
                s+=sc;
     }
     if(s>max)
        max=s;
}
void back (int k)
{
     int val;
     if(k==n+1)
        calcul ();
     else
        for(val=-1;val<=1;val+=2)
            sol[k]=val,back (k+1);
}
int main ()
{
    freopen ("flip.in","r",stdin);
    freopen ("flip.out","w",stdout);
    scanf("%d%d",&n,&m);
    for(i=1;i<=n;++i)
        for(j=1;j<=m;++j)
            scanf("%d",&a[i][j]),s+=a[i][j];
    max=s;
    back (1);
    printf("%d",max);
    return 0;
}