Cod sursa(job #2148176)

Utilizator danhorea2010Horica danhorea2010 Data 1 martie 2018 16:09:24
Problema Jocul Flip Scor 50
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.89 kb
#include <iostream>
#include <fstream>
using namespace std;


ifstream in("flip.in");
ofstream out("flip.out");


const int MAXX = 18;
long long n,m,sol;
long long tabla[MAXX][MAXX];
int s, inv[MAXX];
void citire()
{
  in>>n>>m;
  for(int i=1;i<=m; ++i)
    for(int j=1;j<=n; ++j)
        in>>tabla[i][j];
}

void afisare()
{
  for(int i=1;i<=n;++i)
  {
     for(int j=1;j<=m;++j)
      cout<<tabla[i][j]<<" ";
    cout<<"\n";
  }
}


void btk(int p)
{
  if(p == m + 1)
  {
    int s = 0;
    for(int j=1;j<=n;++j)
    {
      int sumc = 0;
      for(int i=1;i<=m;++i)
          sumc += tabla[i][j] * inv[i];

      if(sumc < 0)
        s -= sumc;
      else s += sumc;
    }
    if(s > sol)
      sol = s;
    return;
  }
  inv[p] = 1;
  btk(p+1);

  inv[p] = -1;
  btk(p+1);


}



int main()
{
  citire();
  btk(1);
  out<< 1LL * sol;


}