Cod sursa(job #813247)

Utilizator rodica_tomaRodica Toma rodica_toma Data 15 noiembrie 2012 06:16:10
Problema Jocul Flip Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.93 kb
#include<fstream>
#include<iostream>
using namespace std;

int n,m,M[20][20],S,sol[20];

void citire()
{
    ifstream in("flip.in");
    int i, j;
    in>>n>>m;
    for(i=1;i<=n;i++)
        for(j=1;j<=m;j++)
            in>>M[i][j];
    in.close();
    cout<<n<<' '<<m;
}

void afisare()
{
    ofstream out("flip.out");
    out<<S<<endl;
    out.close();
}

void back(int k)
{
    int i,j,suma,slin;
    if(k-1==m)
    {
        slin=0;
        for(i=1;i<=n;i++)
        {
            suma=0;
            for(j=1;j<=m;j++)
                suma+=M[i][j]*sol[j];
            if(suma<0)
                slin=slin-suma;
            else
                slin=slin+suma;
            S=max(S,slin);
        }
    }
    else
    {
        for(i=-1;i<=1;i+=2)
        {
            sol[k]=i;
            back(k+1);
        }
    }
}
int main()
{
    citire();
    back(1);
    afisare();
    return 0;
}