Pagini recente » Cod sursa (job #723874) | Cod sursa (job #1707356) | Cod sursa (job #3152204) | Cod sursa (job #980042) | Cod sursa (job #940120)
Cod sursa(job #940120)
#include <fstream>
#include <cstring>
#define MAX 17
using namespace std;
int N, M, maxim;
int S[MAX], aux[MAX], V[MAX][MAX];
inline int abs(const int &X) {
if(X < 0) return -X;
return X;
}
void citire() {
ifstream in("flip.in");
in>>N>>M;
for(int i = 1; i <= N; i++)
for(int j = 1; j <= M; j++) {
in>>V[i][j];
S[i] += V[i][j];
} in.close();
}
void solve() {
for(int conf = 0; conf < (1 << M); conf++) {
memcpy(aux, S, sizeof(S));
for(int i = 1; i <= M; i++) {
if(conf & (1 << (i - 1))) {
for(int j = 1; j <= N; j++)
aux[j] -= 2 * V[j][i];
}
}
int ans = 0;
for(int i = 1; i <= N; i++) {
ans += abs(aux[i]);
} maxim = max(maxim, ans);
}
}
void afisare() {
ofstream out("flip.out");
out<<maxim<<"\n";
out.close();
}
int main() {
citire();
solve();
afisare();
return 0;
}