Cod sursa(job #658739)

Utilizator alex280487Alex V alex280487 Data 9 ianuarie 2012 14:17:13
Problema Jocul Flip Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.85 kb
#include <iostream>
#include <fstream>
#include <cmath>

using namespace std;

int main (void)
{
  ifstream in;
  in.open("flip.in");

  int n, m;

  in >> n >> m;

  int **mat = new int* [n];

  for (int i = 0 ; i < n ; ++i)
    mat[i] = new int[m];

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

  in.close();

  int bsum = -1000000;

  for (int comb = 0 ; comb < (1 << n) ; ++comb)
  {
    int csum = 0;
    for (int j = 0 ; j < m ; ++j)
    {
      int lsum = 0;
      for (int i = 0 ; i < n ; ++i)
        if ((1 << i) & comb)
          lsum += mat[i][j];
        else
          lsum -= mat[i][j];
  
      csum += abs(lsum);
    }
    if (csum > bsum)
      bsum = csum;
  }

  ofstream out;
  out.open("flip.out");

  out << bsum;

  out.close();

  return 0;
}