Cod sursa(job #1438323)

Utilizator antirsi96Sergiu Marin antirsi96 Data 19 mai 2015 17:22:26
Problema Jocul Flip Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.68 kb
#include <iostream>
#include <algorithm>

using namespace std;

int N, M, sign[100], a[100][100], ans;

void solve()
{
	int current = 0, best = 0;
	for (int i = 0; i < N; i++)
	{
		current = 0;
		for (int j = 0; j < M; j++)
			current += a[i][j] * sign[j];
		best += max(-current, current);
	}
	ans = max(ans, best);
}

void back(int k)
{
	if (k == M)
	{
		solve();
		return;
	}
	sign[k] = 1;
	back(k + 1);
	sign[k] = -1;
	back(k + 1);
}

int main()
{
	freopen("flip.in", "r", stdin);
	freopen("flip.out", "w", stdout);

	cin >> N >> M;
	for (int i = 0; i < N; i++)
		for (int j = 0; j < M; j++)
			cin >> a[i][j];
	back(0);
	cout << ans << endl;
}