Cod sursa(job #1018036)

Utilizator RamaStanciu Mara Rama Data 28 octombrie 2013 20:12:17
Problema Jocul Flip Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.85 kb
#include <iostream>
#include <fstream>

using namespace std;

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

int n,m,smax;
int matrix[17][17], X[17];

void read()
{
    in>>n>>m;
    for (int i=1; i<=n; i++)
        for (int j=1; j<=m; j++)
            in>>matrix[i][j];
}

int abs_value (int k)
{
    if (k>0) return k;
    return -k;
}

void back (int k)
{

    if (k==m+1)
    {
        int sum=0;
        for (int i=1;i<=n;i++)
        {
            int t=0;
            for (int j=1;j<=m;j++)
                if (X[j]!=0) t+=-matrix[i][j];
            else t=t+matrix[i][j];
        sum=sum+abs_value(t);
        }
        if (smax<sum) smax=sum;
    }
    else
    {
        X[k]=0; back (k+1);
        X[k]=1; back (k+1);
    }
}

int main ()
{
    read();
    back(1);
    out<<smax<<'\n';
    return 0;
}