Pagini recente » Cod sursa (job #2789312) | Cod sursa (job #2097437) | Cod sursa (job #2226452) | Cod sursa (job #1152660) | Cod sursa (job #2253502)
#include <fstream>
using namespace std;
ifstream fin("flip.in");
ofstream fout("flip.out");
#define inf ~(1 << 31)
int i, j, mat[20][20], ans, line, n, m;
void flipLine(int line) {
for (int i = 1 ; i <= m ; i++)
mat[line][i] = -mat[line][i];
}
int checkSum() {
int sum = 0, crt;
for (int j = 1 ; j <= m ; j++) {
crt = 0;
for (int i = 1 ; i <= n ; i++) {
crt += mat[i][j];
}
sum += abs(crt);
}
return sum;
}
int main()
{
fin >> n >> m;
for (i = 1 ; i <= n ; i++) {
for (j = 1 ; j <= m ; j++) {
fin >> mat[i][j];
}
}
ans = -inf;
for (i = 0 ; i < (1 << n) ; i++) {
for (j = 1, line = 1 ; j <= i ; j <<= 1, line++) {
if (i & j) {
flipLine(line);
}
}
ans = max(ans, checkSum());
}
fout << ans;
return 0;
}