Cod sursa(job #1701660)

Utilizator emanuel_rRamneantu Emanuel emanuel_r Data 13 mai 2016 19:45:32
Problema Jocul Flip Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.94 kb
#include<iostream>
#include<fstream>

using namespace std;

ifstream f("flip.in");
ofstream g("flip.out");

int A[20][20], M[20][20];
int n, m, sol;
int const oo = 1000000000;

void Read()
{
    int i, j;
    f>>n>>m;
    for(i=0; i<n; i++)
        for(j=0; j<m; j++)
            f>>A[i][j];
}

void Back()
{
    int i, j, k, tot, sum, sign;

    sol = -oo;
    for(i=0; i < (1<<n); i++){
        for(j=0; j<n; j++){
            sign = 1;
            if(i & (1<<j))
                sign = -1;
            for(k=0; k<m; k++)
                M[j][k] = sign * A[j][k];
        }

        tot = 0;
        for(j=0; j<m; j++){
            sum = 0;
            for(k=0; k<n; k++)
                sum += M[k][j];
            if(sum < 0)
                sum = -sum;

            tot += sum;
        }

        sol = max(sol, tot);
    }

    g<<sol<<"\n";
}

int main()
{
    Read();
    Back();
    return 0;
}