Cod sursa(job #2346757)

Utilizator Gabi_LazaLaza Gabriel Gabi_Laza Data 18 februarie 2019 08:23:31
Problema Jocul Flip Scor 30
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.33 kb
#include <fstream>
using namespace std;
ifstream in("flip.in");
ofstream out("flip.out");
int main()
{
    int n, m, a[20][20], b[20][20];
    in>>n>>m;
    for(int i=1;i<=n;i++)
      for(int j=1;j<=m;j++)
        in>>a[i][j],b[i][j]=a[i][j];

    for(int j=1;j<=m;j++)
    {
      int s1=0,s2=0;
      for(int i=1;i<=n;i++)
      {
        s1+=a[i][j];
        s2+=a[i][j]*-1;
      }
      if(s2>s1)
      {
        for(int i=1;i<=n;i++)
          a[i][j]*=-1;
      }
    }


    for(int i=1;i<=n;i++)
    {
      int s1=0,s2=0;
      for(int j=1;j<=m;j++)
      {
        s1+=a[i][j];
        s2+=a[i][j]*-1;
      }
      if(s2>s1)
      {
        for(int j=1;j<=m;j++)
          a[i][j]*=-1;
      }
    }
    //2
    for(int i=1;i<=n;i++)
    {
      int s1=0,s2=0;
      for(int j=1;j<=m;j++)
      {
        s1+=b[i][j];
        s2+=b[i][j]*-1;
      }
      if(s2>s1)
      {
        for(int j=1;j<=m;j++)
          b[i][j]*=-1;
      }
    }

    for(int j=1;j<=m;j++)
    {
      int s1=0,s2=0;
      for(int i=1;i<=n;i++)
      {
        s1+=b[i][j];
        s2+=b[i][j]*-1;
      }
      if(s2>s1)
      {
        for(int i=1;i<=n;i++)
          b[i][j]*=-1;
      }
    }

    int s=0,s1=0;
    for(int i=1;i<=n;i++)
      for(int j=1;j<=m;j++)
        s+=a[i][j],s1+=b[i][j];
    if(s>s1)
      out<<s;
    else
      out<<s1;

    return 0;
}