Pagini recente » Cod sursa (job #2131011) | Cod sursa (job #2278972) | Cod sursa (job #2379134) | Cod sursa (job #592823) | Cod sursa (job #2848333)
#include <fstream>
#include <climits>
using namespace std;
#define file
#define lld long long int
#ifdef file
ifstream cin("flip.in");
ofstream cout("flip.out");
#else
#include <iostream>
#endif
int n, m, a[20][20], t;
lld msum = LONG_LONG_MIN;
bool s[20];
void better();
void gen(int k) {
s[k] = 0;
if (k == n)
better();
else
gen(k + 1);
s[k] = 1;
if (k == n)
better();
else
gen(k + 1);
}
int main() {
cin >> n >> m;
for (int i = 1; i <= n; ++i)
for (int j = 1; j <= m; ++j)
cin >> a[i][j];
gen(1);
cout << msum;
return 0;
}
void better() {
lld sum{};
for (int j = 1; j <= m; ++j) {
lld sump{}, summ{};
for (int i = 1; i <= n; ++i)
if (s[i]) { //true shift
sump -= a[i][j];
summ += a[i][j];
}
else {
sump += a[i][j];
summ -= a[i][j];
}
sum += (sump > summ? sump : summ);
}
msum = (msum > sum? msum : sum);
}