Cod sursa(job #1999684)

Utilizator passwordCiaciru Ana Maria password Data 11 iulie 2017 20:43:35
Problema Jocul Flip Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.76 kb
#include <fstream>
#define nmax 17
using namespace std;
ifstream fin("flip.in");
ofstream fout("flip.out");
int n,m, a[nmax][nmax];
int smax;
int x[nmax];

void Read()
{int i,j;
 fin>>n>>m;
 for(i=1;i<=n;i++)
    for(j=1;j<=m;j++)
       {fin>>a[i][j];
        smax+=a[i][j];}
}


int Suma(int k)
{int i,j,l,s,sum=0;
 l=x[k];
 ///Flip
 for(j=1;j<=m;j++) a[l][j]*=-1;
 ///calc suma pe coloane
 for(j=1;j<=m;j++)
   {s=0;
    for(i=1;i<=n;i++)
        s+=a[i][j];
    if(s<0) sum+=s*(-1);
    else sum+=s;
   }
 return sum;
}

void Back(int k)
{int i,j,s;
 for(i=x[k-1]+1;i<=n;i++)
    {x[k]=i;
     s=Suma(k);
     if(s>smax) smax=s;
     if(x[k]<n) Back(k+1);
    }
}

int main()
{Read();
 Back(1);
 fout<<smax<<endl;
 return 0;
}