Cod sursa(job #3154461)

Utilizator AndreiDo2Catan Andrei AndreiDo2 Data 4 octombrie 2023 18:51:36
Problema Jocul Flip Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.79 kb
#include <iostream>
#include <fstream>

using namespace std;

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

int v[16][16], n, m, maxi = 0;

void bck(int l)
{
    if (l == n) 
    {
        int sum = 0;
        for (int j = 0; j < m; j++) 
        {
            int psum = 0;
            for (int i = 0; i < n; i++) psum += v[i][j];
            if (psum < 0) psum *= -1;
            sum += psum;
        } 
        if (sum > maxi) maxi = sum;
        return;
    }

    bck(l + 1);

    for (int j = 0; j < m; j++) v[l][j] *= -1;

    bck(l + 1);

    for (int j = 0; j < m; j++) v[l][j] *= -1;

    return;
}

int main() {
  fin >> n >> m;

  for (int i = 0; i < n; i++)
      for (int j = 0; j < m; j++) fin >> v[i][j];

  bck(0);

  fout << maxi;
  
  fin.close();
  fout.close();
  return 0;
}