Cod sursa(job #2810769)

Utilizator P1zd0SuntBetoAlbert Beto P1zd0SuntBeto Data 30 noiembrie 2021 10:39:07
Problema Jocul Flip Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.72 kb
#include <iostream>
#include <fstream>

using namespace std;
ifstream in("flip.in");
ofstream out("flip.out");
int m, n, a[20][20],coloana_sum[20],maxim;

void verifica()
{
	int sum = 0;
	for (int j = 0; j < m; j++)
		sum += max(coloana_sum[j], -coloana_sum[j]);
	maxim = max(sum, maxim);
}

void comutare(int r)
{
	for (int j = 0; j < m; j++) {
		a[r][j] *= -1;
		coloana_sum[j] += 2 * a[r][j];
	}
}
void bkt(int i = 0)
{
	if (i == n)
	{
		verifica();
		return;
	}
	bkt(i + 1);
	comutare(i);
	bkt(i + 1);
}

int main()
{
	in >> n >> m;
	for (int i = 0; i < n; i++)
		for (int j = 0; j < m; j++) {
			in >> a[i][j];
			coloana_sum[j] += a[i][j];
		}
	bkt();
	out << maxim;
	return 0;
}