Cod sursa(job #1885132)

Utilizator Matei_2001Matei Popa Matei_2001 Data 19 februarie 2017 17:29:00
Problema Jocul Flip Scor 20
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.18 kb
#include <fstream>
using namespace std;
ifstream f("flip.in");
ofstream g("flip.out");

int modul(int n)
{
  if (n >= 0) return n;
  else return -n;  
}

int main()
{
  int n, m, i, j, suma_pozitive, suma_negative, suma_max = 0;
  
  f >> n >> m;
  
  int tabla[n][m];
  
  for (i = 0; i < n; i++)
    for (j = 0; j < m; j++)
      f >> tabla[i][j];

  for (i = 0; i < n; i++)
  {
	suma_pozitive = 0;
    suma_negative = 0;

    for (j = 0; j < m; j++)
      if (tabla[i][j] >= 0)
        suma_pozitive += tabla[i][j];
      else 
        suma_negative += tabla[i][j];

    if (suma_pozitive - modul(suma_negative) < 0)
	  for (j = 0; j < m; j++)
	    tabla[i][j] *= (-1);	      		
  }

  for (j = 0; j < m; j++)
  {
	suma_pozitive = 0;
    suma_negative = 0;

    for (i = 0; i < n; i++)
      if (tabla[i][j] >= 0)
        suma_pozitive += tabla[i][j];
      else 
        suma_negative += tabla[i][j];

    if (suma_pozitive - modul(suma_negative) < 0)
	  for (i = 0; i < n; i++)
	    tabla[i][j] *= (-1);	      		
  }

  for (i = 0; i < n; i++)
    for (j = 0; j < m; j++)
      suma_max += tabla[i][j];

  g << suma_max;

  return 0;  
}