Cod sursa(job #2555160)

Utilizator stefan333Alexandru David stefan333 Data 23 februarie 2020 19:06:40
Problema Jocul Flip Scor 20
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.37 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream f ("flip.in");
ofstream g ("flip.out");

void modifica(int i,int m,int a[100][100])
{ int j;

    for( j=1;j<=m;j++)
    a[i][j]=a[i][j]*-1;

}
void modifica2(int j,int n,int a[100][100])
{ int i;

    for( i=1;i<=n;i++)
    a[i][j]=a[i][j]*-1;

}
void aranjare1(int n,int m,int a[100][100])
{
    int i,j,sum1,sum2;
   for(i=1;i<=n;i++)
   {
      sum1=0;
      sum2=0;
    for(j=1;j<=m;j++)
    {
      if(a[i][j]>0)
        sum1+=a[i][j];
      else
        sum2=sum2+a[i][j]*-1;
    }
    if(sum1<sum2)
    {
        modifica(i,m,a);
    }
    }


}
void aranjare2(int n,int m,int a[100][100])
{
     int i,j,sum1,sum2;
   for(j=1;j<=m;j++)
   {
      sum1=0;
      sum2=0;
    for(i=1;i<=n;i++)
    {
      if(a[i][j]>0)
        sum1+=a[i][j];
      else
        sum2=sum2+a[i][j]*-1;
    }
    if(sum1<sum2)
    {
        modifica2(j,n,a);
    }
    }

}
void citire(int n,int m,int a[100][100])
{
int i,j;
    for(i=1;i<=n;i++)
    for(j=1;j<=m;j++)
    f>>a[i][j];

}

int main()
{
    int n,m,i,j;
    f>>n;
    f>>m;
    int a[100][100];
   citire(n,m,a);

   aranjare1(n,m,a);
   aranjare2(n,m,a);

     int suna=0;
     for(i=1;i<=n;i++)
        for(j=1;j<=m;j++)
            suna+=a[i][j];

        g<<suna;
    return 0;
}