Pagini recente » Cod sursa (job #425193) | Cod sursa (job #425240) | Cod sursa (job #2987822) | Cod sursa (job #586391) | Cod sursa (job #2770395)
#include <fstream>
using namespace std;
ifstream fin("flip.in");
ofstream fout("flip.out");
int n, m, v[20][20], x[40], maxim;
void suma() {
int sum = 0;
for(int j = 1; j <= m; j++) {
int s = 0;
for(int i = 1; i <= n; i++) {
if( (x[i] == 1 && x[j + n] == 1) || (x[i] == 0 && x[j + n] == 0) ) {
s += v[i][j];
} else {
s += -1 * v[i][j];
}
}
if(s < 0) {
s = -s;
}
sum += s;
}
if(sum > maxim) {
maxim = sum;
}
}
void back(int k) {
for(int i = 0; i <= 1; i++) {
x[k] = i;
if(k > n) {
suma();
} else {
back(k + 1);
}
}
}
int main() {
fin >> n >> m;
for(int i = 1; i <= n; i++) {
for(int j = 1; j <= m; j++) {
fin >> v[i][j];
}
}
fin.close();
back(1);
fout << maxim;
fout.close();
return 0;
}