Pagini recente » Cod sursa (job #2492475) | Cod sursa (job #2170158) | Cod sursa (job #1493615) | Cod sursa (job #2989338) | Cod sursa (job #2440005)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("flip.in");
ofstream fout("flip.out");
int short n, m;
int mat[20][20], a[40], maxVal = 0;
void sol()
{
int fs = 0, ss;
for(int i = 1; i <= m; i++)
{
ss = 0;
for(int j = 1; j <= n; j++)
ss += a[j] * mat[j][i];
if(ss < 0)
ss = -ss;
fs += ss;
}
if(fs > maxVal) maxVal = fs;
}
void bktr(int i)
{
if(i > n) sol();
else {
a[i] = 1;
bktr(i + 1);
a[i] = -1;
bktr(i + 1);
}
}
int main()
{
fin >> n >> m;
for(int i = 1; i <= n; i++)
for(int j = 1; j <= m; j++)
fin >> mat[i][j];
bktr(1);
fout << maxVal;
return 0;
}