Pagini recente » Cod sursa (job #969248) | Cod sursa (job #769648) | Cod sursa (job #2620010) | Cod sursa (job #1493285) | Cod sursa (job #2148169)
#include <iostream>
#include <fstream>
using namespace std;
ifstream in("flip.in");
ofstream out("flip.out");
const long long MAXX = 17;
int 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<<sol;
}