Cod sursa(job #659461)

Utilizator alin.18Chedea Alin alin.18 Data 10 ianuarie 2012 17:35:04
Problema Jocul Flip Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.01 kb
#include <iostream>
#include <fstream>
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];
              if (lsum < 0)
              csum -= lsum;
              
              else
              csum += lsum;
              }
              if (csum > bsum)
              bsum = csum;
}

 ofstream out;
 out.open("flip.out");
 out << bsum; 
 out.close();
return 0;
}