Pagini recente » Cod sursa (job #1804152) | Cod sursa (job #2604979) | Cod sursa (job #2159487) | Cod sursa (job #2734667) | Cod sursa (job #507983)
Cod sursa(job #507983)
#include <cstdlib>
#include <fstream>
using namespace std;
int main(void) {
ifstream in("flip.in");
ofstream out("flip.out");
int m, n;
in >> m >> n;
int a[n][m];
for (int i = 0; i < n; i++) {
for (int j = 0; j < m; j++) {
in >> a[i][j];
}
}
int max = 1 << n;
long ret[m];
long total = 0;
for (int mask = 0; mask < max; mask++) {
for (int j = 0; j < m; j++) {
ret[j] = 0;
}
for (int i = 0; i < n; i++) {
int imask = 1 << i;
int sign = 1;
if (!(mask & imask))
sign = -1;
for (int j = 0; j < m; j++) {
ret[j] += a[i][j] * sign;
}
}
long t = 0;
for (int i = 0; i < m; i++) {
t += (ret[i] < 0) ? -ret[i] : ret[i];
}
if (t > total)
total = t;
}
out << total;
return 0;
}