Pagini recente » Cod sursa (job #2355178) | Cod sursa (job #3126052) | Cod sursa (job #2890280) | Cod sursa (job #2384244) | Cod sursa (job #2470924)
#include <iostream>
#include <fstream>
#include <cmath>
#define NMAX 20
#define INF 16 * 16 * 1000000 * (-1)
using namespace std;
ifstream fin("flip.in");
ofstream fout("flip.out");
int N, M;
int mapp[NMAX][NMAX], maxSum = INF;
void Solve()
{
int sum = 0, summ = 0;
for(int i = 0 ; i < N ; i++)
{
sum = 0;
for(int j = 0 ; j < M ; j++)
sum += mapp[i][j];
summ += abs(sum);
}
maxSum = max(maxSum,summ);
}
void ChangeMatrix(int j)
{
for(int i = 0 ; i < N; i++)
mapp[i][j] *= (-1);
}
void BKT(int k)
{
if(k == M)
{
Solve();
return;
}
BKT(k + 1);
ChangeMatrix(k);
BKT(k + 1);
ChangeMatrix(k);
}
int main()
{
fin >> N >> M;
for(int i = 0 ; i < N; i++)
for(int j = 0 ; j < M ; j++)
fin >> mapp[i][j];
BKT(0);
fout << maxSum << "\n";
return 0;
}