Cod sursa(job #2627845)

Utilizator ILikeitN Stef ILikeit Data 12 iunie 2020 19:53:15
Problema Jocul Flip Scor 30
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.97 kb
/*--------------------Jocul Flip--------------------*/
#include <fstream>
 
using namespace std;
 
int n = 0, m = 0;
int a[20][20];
ifstream fin("flip.in");
ofstream fout("flip.out");
int suma = 0, sumaTotala = 0;
 
 
int main(int argc, char const** argv)
{
//citesteDinFisier: 
	fin >> n >> m;
	for(int linii = 0; linii < n; linii++)
		for(int coloane = 0; coloane < m; coloane++)
			fin >> a[linii][coloane];
 
prelucreazaDatele:
	/*exploram fiecare coloana si incrementam suma cu numarul pe care il gasim*/
	for (int indexLinii = 0; indexLinii < n; indexLinii++)
	{
		for(int indexColoane = 0; indexColoane < m; indexColoane++)
		{
			suma += a[indexLinii][indexColoane]; 
		}
 
		/*daca suma este negativa, intoarcem comutatorul => suma va fi egala cu aceasta * -1*/
		if (suma < 0)
		{
			for(int indexColoane = 0; indexColoane < m; indexColoane++)
			{
				a[indexLinii][indexColoane] *= -1; 
			}
			// suma *= -1;
			suma = 0;
			sumaTotala = 0;
			goto prelucreazaDatele;
		}
 
		/*altfel, mergem mai departe, resetam suma si incrementam sumaTotala cu suma*/
 
		sumaTotala += suma;
		suma = 0;
	}
 
	sumaTotala = 0;
 
	for (int indexColoane = 0; indexColoane < m; indexColoane++)
	{
		for(int indexLinii = 0; indexLinii < n; indexLinii++)
		{
			suma += a[indexLinii][indexColoane]; 
		}
 
		/*daca suma este negativa, intoarcem comutatorul => suma va fi egala cu aceasta * -1*/
		if (suma < 0)
		{
			for(int indexLinii = 0; indexLinii < n; indexLinii++)
			{
				a[indexLinii][indexColoane] *= -1; 
			}
			// suma *= -1;
			suma = 0;
			sumaTotala = 0;
			goto prelucreazaDatele;		
		}
 
		/*altfel, mergem mai departe, resetam suma si incrementam sumaTotala cu suma*/
 
		sumaTotala += suma;
		suma = 0;
	}
	fout << sumaTotala;
	
	
 
	/*facem acelasi lucru si pentru linii*/
 
    return 0;
}
 
/*
f >> m >> n;
  for (int i = 0; i < m; i++) {
    for (int j = 0; j < n; j++) {
      f >> a[i][j];
    }
  }
  */