Cod sursa(job #2325918)

Utilizator stefanut999Paul Colta stefanut999 Data 23 ianuarie 2019 10:38:50
Problema Jocul Flip Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.85 kb
#include <fstream>
#include <iostream>
#include <cmath>
#define max(a,b) a > b ? a : b
using namespace std;
ifstream fin("flip.in");
ofstream fout("flip.out");
int n,m,maximel,a[17][17],semn[17],x;

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

      

void rezolvare(int k)
{//cout<<x<<'\n';
//x++;
  if(k == m)
    { int suma = 0, scoloana, linie, coloana;
      for(linie = 0; linie < n; ++linie)
        {
          scoloana = 0;
          for(coloana = 0; coloana < m; ++coloana)
            scoloana += a[linie][coloana] * semn[coloana];
          suma += abs(scoloana);
        }
      maximel = max(maximel, suma);
    }
  else
    {
      semn[k] = -1;
      rezolvare(k+1);
      semn[k] = 1;
      rezolvare(k + 1);
    }
}

int main()
{ citire();
  rezolvare(0);
  fout<<maximel;
  return 0;
}