Cod sursa(job #2638241)

Utilizator ciprian_olaruCiprian Olaru ciprian_olaru Data 27 iulie 2020 16:05:14
Problema Jocul Flip Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.11 kb
#include <iostream>
using namespace std;

int n, m, mat[17][17];

int main() {
	cin >> n >> m;
	int sum = 0;
	for (int i = 0; i < n; ++i)
		for (int j = 0; j < m; ++j) {
			cin >> mat[i][j];
			sum += mat[i][j];
		}

	int iP = 0, jP = 0;
	while (true) {
		int tmp[17][17];
		for (int i = 0; i < n; ++i)
			for (int j = 0; j < m; ++j)
				tmp[i][j] = (i == iP || j == jP ? -mat[i][j] : mat[i][j]);

		int tmpSum = 0;
		for (int i = 0; i < n; ++i)
			for (int j = 0; j < m; ++j)
				tmpSum += tmp[i][j];

		if (tmpSum > sum) sum = tmpSum;

		++jP;
		if (jP == n) {
			jP = 0;
			++iP;
			if (iP == n) break;
		}
	}
	cout << sum;
}

/* --------------------METHOD---------------
int n, mat[100][100];
cin >> n;
for (int i = 0; i < n; ++i)
	for (int j = 0; j < n; ++j)
		mat[i][j] = 1;

int iP = 0, jP = 0;
cout << "\n";
while (true) {
	for (int i = 0; i < n; ++i) {
		for (int j = 0; j < n; ++j)
			if (i == iP || j == jP) cout << "0 ";
			else cout << mat[i][j] << " ";
		cout << "\n";
	}
	cout << "\n";
	++jP;
	if (jP == n) {
		jP = 0;
		++iP;
		if (iP == n) break;
	}
}

*/