Pagini recente » Cod sursa (job #2741031) | Cod sursa (job #1111181) | Cod sursa (job #2171712) | Cod sursa (job #3286809) | Cod sursa (job #2148176)
#include <iostream>
#include <fstream>
using namespace std;
ifstream in("flip.in");
ofstream out("flip.out");
const int MAXX = 18;
long long n,m,sol;
long long tabla[MAXX][MAXX];
int s, inv[MAXX];
void citire()
{
in>>n>>m;
for(int i=1;i<=m; ++i)
for(int j=1;j<=n; ++j)
in>>tabla[i][j];
}
void afisare()
{
for(int i=1;i<=n;++i)
{
for(int j=1;j<=m;++j)
cout<<tabla[i][j]<<" ";
cout<<"\n";
}
}
void btk(int p)
{
if(p == m + 1)
{
int s = 0;
for(int j=1;j<=n;++j)
{
int sumc = 0;
for(int i=1;i<=m;++i)
sumc += tabla[i][j] * inv[i];
if(sumc < 0)
s -= sumc;
else s += sumc;
}
if(s > sol)
sol = s;
return;
}
inv[p] = 1;
btk(p+1);
inv[p] = -1;
btk(p+1);
}
int main()
{
citire();
btk(1);
out<< 1LL * sol;
}