Cod sursa(job #1426264)

Utilizator hasmasandragosHasmasan Dragos hasmasandragos Data 29 aprilie 2015 11:53:42
Problema Jocul Flip Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.86 kb
#include <fstream>
using namespace std;
ifstream f("flip.in");
ofstream g("flip.out");

int a[18][18],n,m,i,j,summax=-(1<<31);
int aux[18][18];

void column (int lvl, int semn)
{
    for (i=1;i<=n;i++)
     aux[i][lvl]=a[i][lvl]*semn;
}

void bak (int lvl)
{
    if (lvl==m+1)
    {
        int sum=0,sumlin;
        for (i=1;i<=n;i++)
        {
            sumlin=0;
            for (j=1;j<=m;j++)
                sumlin+=aux[i][j];
            if (sumlin<0)
                sum+=-sumlin;
            else
                sum+=sumlin;
        }

        if (sum>summax)
            summax=sum;
        return;
    }
    column(lvl,-1);
    bak(lvl+1);
    column(lvl,1);
    bak(lvl+1);
}

int main()
{
    f>>n>>m;
    for (i=1;i<=n;i++)
        for (j=1;j<=m;j++)
          f>>a[i][j];
    bak(1);
    g<<summax;
    return 0;
}