Cod sursa(job #1813974)

Utilizator AlleeexCristina.Gn Alleeex Data 23 noiembrie 2016 15:54:11
Problema Jocul Flip Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.04 kb
#include <fstream>

using namespace std;
int a[18][18],b[18][18],n,m,v[18],smax;

void Citire()
{
    int i,j;

    ifstream f("flip.in");

    f>>n>>m;
    for(i=1;i<=n;i++)

        for(j=1;j<=m;j++)

            f>>a[i][j];

    f.close();
}
void Calcul()
{
    int i,j,stotal;

    for(j=1;j<=m;j++)

        if(v[j]==1)

            for(i=1;i<=n;i++)

                b[i][j]=-a[i][j];

        else

            for(i=1;i<=n;i++)

                b[i][j]=a[i][j];
    stotal=0;

    for(i=1;i<=n;i++)
    {
        int s=0;

        for(j=1;j<=m;j++)

            s+=b[i][j];

        if(s<0)

            stotal-=s;

        else

            stotal+=s;
    }

    smax=max(smax,stotal);
}
void Gen(int top)
{
    int i;

    if(top==m+1)

        Calcul();
    else

      for(i=0;i<=1;i++)
    {
        v[top]=i;

        Gen(top+1);
    }
}
int main()
{
    ofstream g("flip.out");

    Citire();

    Gen(1);

    g<<smax<<"\n";

    g.close();

    return 0;
}