Cod sursa(job #1748766)

Utilizator horiacoolNedelcu Horia Alexandru horiacool Data 26 august 2016 19:48:43
Problema Jocul Flip Scor 30
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.92 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("flip.in");
ofstream g("flip.out");
int N,M,i,j,mat[100][100],s1,s2,S1,S2,maxim;

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

}

int suma_matrice1(int x)
{
    x=0;

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

    return x;

}
int suma_matrice2(int x)
{
    x=0;

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

    return x;

}

int main()
{

   Read();
   S1=0;
   S2=1;

   while(S1<S2)
    {
      S1=suma_matrice1(S1);
      S2=suma_matrice2(S2);
      if(S1>=S2)
         if(S1>maxim)
            maxim=S1;
      if(S2>S1)
         if(S2>maxim)
            maxim=S2;
    }

   g<<maxim;

  return 0;
}