Cod sursa(job #1748810)

Utilizator horiacoolNedelcu Horia Alexandru horiacool Data 26 august 2016 22:15:15
Problema Jocul Flip Scor 30
Compilator cpp Status done
Runda Arhiva de probleme Marime 2.04 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("flip.in");
ofstream g("flip.out");

int N,M,i,j,mat[50][50],aux[50][50],S1,S2;

void Read()
{
    f>>N>>M;
    for(i=1;i<=N;i++)
        for(j=1;j<=M;j++)
        {
            f>>mat[i][j];
            aux[i][j]=mat[i][j];
        }
}

int suma_matrice1(int x)
{
    x=0;

    for(i=1;i<=N;i++)
    {
        int s1=0;
        int s2=0;
        for(j=1;j<=M;j++)
            {
            s1=s1+aux[i][j];
            s2=s2-aux[i][j];
            }
        if(s1<s2)
            for(j=1;j<=M;j++)
                aux[i][j]=-aux[i][j];
    }

    for(j=1;j<=M;j++)
    {
        int s1=0;
        int s2=0;
        for(i=1;i<=N;i++)
            {
            s1=s1+aux[i][j];
            s2=s2-aux[i][j];
            }
        if(s1<s2)
            for(i=1;i<=N;i++)
                aux[i][j]=-aux[i][j];
    }

    for(i=1;i<=N;i++)
       {
        for(j=1;j<=M;j++)
        {
           x=x+aux[i][j];
           aux[i][j]=mat[i][j];
        }

       }

    return x;

}

int suma_matrice2(int x)
{
    x=0;

    for(j=1;j<=M;j++)
    {
        int s1=0;
        int s2=0;
        for(i=1;i<=N;i++)
            {
            s1=s1+aux[i][j];
            s2=s2-aux[i][j];
            }
        if(s1<s2)
            for(i=1;i<=N;i++)
                aux[i][j]=-aux[i][j];
    }

    for(i=1;i<=N;i++)
    {
        int s1=0;
        int s2=0;
        for(j=1;j<=M;j++)
            {
            s1=s1+aux[i][j];
            s2=s2-aux[i][j];
            }
        if(s1<s2)
            for(j=1;j<=M;j++)
                aux[i][j]=-aux[i][j];
    }

    for(i=1;i<=N;i++)
       {
        for(j=1;j<=M;j++)
        {
           x=x+aux[i][j];

           aux[i][j]=mat[i][j];

        }

       }

    return x;

}

int main()
{
    Read();
    S1=0;
    S2=0;

    S1=suma_matrice1(S1);

    S2=suma_matrice2(S2);

    if(S1>=S2)
        g<<S1;
    else
        g<<S2;



    return 0;
}