Cod sursa(job #1735547)

Utilizator Cudrici_CarinaCudrici Carina Cudrici_Carina Data 30 iulie 2016 10:18:58
Problema Jocul Flip Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.8 kb
#include <fstream>
using namespace std;
ifstream fi("flip.in");
ofstream fo("flip.out");

int a[20],b[20][20],n,m,maxi;


void afisare (int i)
{
for (int j=1;j<=i;j++) fo<<a[j]<<" ";
fo<<'\n';
}

int suma()
{ int s=0,sc=0;
  for(int i=1;i<=n;i++)
  if (a[i]==0) for(int j=1;j<=m;j++) b[i][j]*=-1;

  for(int j=1;j<=m;j++)
    {sc=0;
     for(int i=1;i<=n;i++) sc+=b[i][j];
     if (sc < 0) s+=sc*(-1);
            else s+=sc;
    }

 for(int i=1;i<=n;i++)
  if (a[i]==0) for(int j=1;j<=m;j++) b[i][j]*=-1;

 return s;
}

int bt(int i)
{
  for (int val=0;val<=1;val++)

  { a[i]=val;
    if (i==n) maxi=max(maxi,suma());
            else bt(i+1);
  }
}



int main()
{
fi>>n>>m;
for(int i=1;i<=n;i++) for(int j=1;j<=m;j++) fi>>b[i][j];
bt(1);
fo<<maxi;
 return 0;
}