Cod sursa(job #2000893)

Utilizator zvonTutuldunsa Voronokda zvon Data 14 iulie 2017 23:42:41
Problema Jocul Flip Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.69 kb
#include <iostream>
#include <fstream>
#define INF 1000000000
long long v[16][16];
long long sum[16];
int n, m;

using namespace std;

int main() {
	ifstream fi("flip.in");
	ofstream fo("flip.out");
	int i, j, k;
	fi >> n >> m;
	for (i = 0; i < n; i++) {
		for (j = 0; j < m; j++) {
			fi >> v[i][j]; 
		}
	}
	long long lim = 1 << n;
	long long mx = -INF;
	long long s;
	for (k = 0; k < lim; k++) {
		s = 0;
		for (j = 0; j < m; j++) {
			sum[j] = 0;
			for (i = 0; i < n; i++) {
				if (k & (1 << i))
					sum[j] -= v[i][j];
				else
					sum[j] += v[i][j];
			}
			if (sum[j] > 0)
				s += sum[j];
			else
				s -= sum[j];
		}
		if (s > mx)
			mx = s;
	}
	fo << mx;
	fi.close();
	fo.close();
	return 0;
}