Pagini recente » Cod sursa (job #803774) | Cod sursa (job #169069) | Cod sursa (job #1361414) | Cod sursa (job #1449936) | Cod sursa (job #1014530)
#include <fstream>
#include <vector>
using namespace std;
ifstream fin("flip.in");
ofstream fout("flip.out");
int mat[20][20];
bool sign[20];
int N, M, Suma = 0;
void rezolva() {
int pmax, i, ii, j;
pmax = 1 << M;
for (i = 1; i < pmax; i++)
{
for (j = 0; j < M; j++) {
if ((1 << j) & i)
sign[j] = true;
else
sign[j] = false;
}
int SumTot = 0;
for (ii = 0; ii < N; ii++)
{
int SumL = 0;
for (j = 0; j < M; j++)
{
if (sign[j])
SumL -= mat[ii][j];
else
SumL += mat[ii][j];
}
if (SumL > 0)
SumTot += SumL;
else
SumTot -= SumL;
}
if (SumTot > Suma)
Suma = SumTot;
}
}
int main() {
int i, j;
fin>>N;
fin>>M;
for (i = 0; i < N; i++)
for (j = 0; j < M; j++)
fin>>mat[i][j];
rezolva();
fout<<Suma;
}