Cod sursa(job #1620912)

Utilizator Firealex2Rotileanu Alexandru Firealex2 Data 29 februarie 2016 13:57:43
Problema Jocul Flip Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.51 kb
#include <iostream>
#include <fstream>
using namespace std;
fstream in("flip.in");
ofstream out("flip.out");

int main()
{
    int line,col,suma=0; in>>line>>col;
    long long int tabel[line][col];

    for(int i=1;i<=line;i++)
        for(int j=1;j<=col;j++)
            in>>tabel[i][j];

    for(int i=1;i<=col;i++)
    {
        int sc=0;
        for(int j=1;j<=line;j++)
        {
            sc+=tabel[j][i];
        }
        if(sc<(sc*-1))
        {
            sc=sc*-1;
            for(int j=1;j<=line;j++)
                tabel[j][i]=tabel[j][i]*-1;
        }

        //Pentru linii
        for(int c=1;c<=line;c++)
        {
            int sl=0;
            for(int k=1;k<=col;k++)
            {
                sl+=tabel[c][k];
            }
            if(sl<(sl*-1))
            {
                sl=sl*-1;
                //Switch pentru linie
                for(int k=1;k<=col;k++)
                    tabel[c][k]=tabel[c][k]*-1;
                //Suma coloana si linie
                for(int j=1;j<=line;j++)
                {
                    sl+=tabel[j][i];
                }
                //Verificare si comutare default
                if(sl<sc)
                {
                    for(int k=1;k<=col;k++)
                    tabel[c][k]=tabel[c][k]*-1;
                }
            }
        }
    }

    for(int i=1;i<=line;i++)
    {
        for(int j=1;j<=col;j++)
        {
           suma+=tabel[i][j];
        }
    }
    out<<suma;
}