Pagini recente » Cod sursa (job #2590685) | Cod sursa (job #634608) | Cod sursa (job #1402407) | Cod sursa (job #573421) | Cod sursa (job #480478)
Cod sursa(job #480478)
#include <iostream>
#include <algorithm>
#include <fstream>
#include <string>
using namespace std;
#define FILE_IN "flip.in"
#define FILE_OUT "flip.out"
int main()
{
ifstream fisIn(FILE_IN);
ofstream fisOut(FILE_OUT);
int mat[16][16];
int N,M;
fisIn >> N >> M;
for (int i=0; i<N; i++)
for (int j=0; j<M; j++)
fisIn >> mat[i][j];
int max = mat[0][0];
for (int pat=(1<<(M-1))-1; pat >= 0; pat--)
{
int lin[16];
for (int j=0; j<M; j++)
lin[j] = (pat >> j) & 1 ? 1 : -1;
int total = 0;
for (int i=0; i<N; i++)
{
int sum = 0;
for (int j=0; j<M; j++)
sum += mat[i][j]*lin[j];
total += (sum > 0) ? sum : -sum;
}
if (total > max) max = total;
}
fisOut << max;
}