Cod sursa(job #2817033)

Utilizator g.cezar98grdnr cez g.cezar98 Data 12 decembrie 2021 18:35:18
Problema Jocul Flip Scor 20
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.3 kb
/*#include<iostream>
#include <fstream>
using namespace std;
int main() {
	ifstream f("cmmdc.in"); ofstream g("cmmdc.out"); short int a, b; f >> a >> b; short int r; while (b != 0) { r = a % b; a = b; b = r; }if (a == 1) { a=0; }g << a; return 0;
}*/

#include<iostream>
#include<fstream>
using namespace std;
int main() {
	ifstream f("flip.in");
	ofstream g("flip.out");
	int n, m;
	f >> n >> m;
	int** matrix=new int*[n];
	for (int i = 0; i < n; i++) {
		matrix[i] = new int[m];
	}
	for (int i = 0; i < n; i++) {
		for (int j = 0; j < m; j++) {
			f >> matrix[i][j];
		}
	}
	//linii
	for (int i = 0; i < n; i++) {
		int sum = 0;
		int sum_neg = 0;
		for (int j = 0; j < m; j++) {
			sum += matrix[i][j];
			sum_neg -= matrix[i][j];
		}
		if (sum_neg > sum) {
			for (int j = 0; j < m; j++) {
				matrix[i][j] *= (-1);
			}
		}
	}
	//coloane
	for (int i = 0; i < m; i++) {
		int sum = 0;
		int sum_neg = 0;
		for (int j = 0; j < n; j++) {
			sum += matrix[j][i];
			sum_neg -= matrix[j][i];
		}
		if (sum_neg > sum) {
			for (int j = 0; j < n; j++) {
				matrix[j][i] *= (-1);
			}
		}
	}
	int sum=0;
	for (int i = 0; i < n; i++) {
		for (int j = 0; j < m; j++) {
			sum += matrix[i][j];
			//g << matrix[i][j]<<" ";
		}
		//g << "\n";
	}
	g << sum;
	return 0;
}