Cod sursa(job #659987)

Utilizator adrianav500Adriana Voinescu adrianav500 Data 11 ianuarie 2012 14:08:16
Problema Jocul Flip Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.81 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;
}