Pagini recente » Cod sursa (job #665910) | Cod sursa (job #2379122) | Cod sursa (job #2033095) | Cod sursa (job #843910) | Cod sursa (job #2206348)
#include <fstream>
#include <iostream>
#include <cmath>
using namespace std;
ifstream in("flip.in");
ofstream out("flip.out");
int a[17][17], f[17], n, m, maxim;
void check() {
int s = 0;
for(int j = 1; j <= m; j++) {
int sc = 0;
for(int i = 1; i <= n; i++)
sc += a[i][j] * f[i];
s += abs(sc);
maxim = max(maxim, s);
}
}
void backt(int k) {
if(k <= n) {
f[k] = 1;
backt(k+1);
f[k] = -1;
backt(k+1);
} else check();
}
int main()
{
in >> n >> m;
for(int i = 1; i <= n; i++)
for(int j = 1; j <= m; j++)
in >> a[i][j];
backt(1);
out << maxim;
return 0;
}