Pagini recente » Cod sursa (job #2334035) | Cod sursa (job #2129152) | Cod sursa (job #2122170) | Cod sursa (job #8282) | Cod sursa (job #2199637)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("flip.in");
ofstream fout("flip.out");
int val[17], mat[17][17];
int n,m;
long long maxsum, sum, sumcol;
void bkt(int it) {
if(it > m) {
sum = 0;
for(int i = 1; i <= n; i++) {
sumcol = 0;
for(int j = 1; j <= m; j++) {
sumcol += val[j] * mat[i][j];
}
if(sumcol < 0) {
sumcol = -sumcol;
}
sum += sumcol;
}
maxsum = max(maxsum, sum);
} else {
val[it] = 1;
bkt(it + 1);
val[it] = -1;
bkt(it + 1);
}
}
int main() {
fin >> n >> m;
for(int i = 1; i <= n; i++) {
for(int j = 1; j <= m; j++) {
fin >> mat[i][j];
}
}
bkt(1);
fout << maxsum << " ";
}