Cod sursa(job #1255420)

Utilizator NicuBaciuNicu Baciu NicuBaciu Data 4 noiembrie 2014 19:38:26
Problema Jocul Flip Scor 20
Compilator cpp Status done
Runda Arhiva de probleme Marime 2.22 kb
#include <fstream>

using namespace std;

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

int main()
{
    int N, M, i, j;
    int Suma = 0;
    int Suma1 = 0;
    int S = 0;
    int Sn = 0;
    int t[16][16];
    int tn[16][16];

    fin >> N >> M;

    for(j=0; j<N; j++)
    {
        for(i=0; i<M; i++)
        {
            fin >> t[i][j];
        }
    }

    for(j=0; j<N; j++)
    {
        for(i=0; i<M; i++)
        {
            tn[i][j] = -t[i][j];
            S = S + t[i][j];
            Sn = Sn + tn[i][j];
        }

        if(Sn>S)
        {
            for(i=0; i<M; i++)
            {
                t[i][j] = -(t[i][j]);
            }
        }
        S=0;
        Sn=0;
    }

    S=0;
    Sn=0;

    for(i=0; i<M; i++)
    {
        for(j=0; j<N; j++)
        {
            tn[i][j] = -t[i][j];
            S = S + t[i][j];
            Sn = Sn + tn[i][j];
        }

        if(Sn>S)
        {
            for(j=0; j<N; j++)
            {
                t[i][j] = -t[i][j];
            }
        }

        S=0;
        Sn=0;
    }


    for(j=0; j<N; j++)
    {
        for(i=0; i<M; i++)
        {
            Suma=Suma + t[i][j];
        }
    }

    S=0;
    Sn=0;

    for(i=0; i<M; i++)
    {
        for(j=0; j<N; j++)
        {
            tn[i][j] = -t[i][j];
            S = S + t[i][j];
            Sn = Sn + tn[i][j];
        }

        if(Sn>S)
        {
            for(j=0; j<N; j++)
            {
                t[i][j] = -t[i][j];
            }
        }

        S=0;
        Sn=0;
    }

    S=0;
    Sn=0;

    for(j=0; j<N; j++)
    {
        for(i=0; i<M; i++)
        {
            tn[i][j] = -t[i][j];
            S = S + t[i][j];
            Sn = Sn + tn[i][j];
        }

        if(Sn>S)
        {
            for(i=0; i<M; i++)
            {
                t[i][j] = -(t[i][j]);
            }
        }
        S=0;
        Sn=0;
    }

    for(j=0; j<N; j++)
    {
        for(i=0; i<M; i++)
        {
            Suma1=Suma1 + t[i][j];
        }
    }

    if(Suma>Suma1)
    {
        fout << Suma;
    }
    else
    {
        fout << Suma1;
    }

    return 0;
}