Pagini recente » Cod sursa (job #676331) | Cod sursa (job #1988033) | Cod sursa (job #2760456) | Cod sursa (job #356029) | Cod sursa (job #1888482)
#include <iostream>
#include <fstream>
using namespace std;
ifstream intrare("flip.in");
ofstream iesire("flip.out");
const int nmax=16, mmax=16;
int v[nmax+1][mmax+1], u[nmax+1];
int n, m, sol;
void bt(int x)
{
if (x==n+1)
{
int aux=0;
for (int j=1; j<=m; j++)
{
int s=0;
for (int i=1; i<=n; i++)
s+=v[i][j]*u[i];
if (s<0)
aux-=s;
else
aux+=s;
}
if (aux>sol)
sol=aux;
}
else
{
u[x]=1;
bt(x+1);
u[x]=-1;
bt(x+1);
}
}
int main()
{
intrare>>n>>m;
for (int i=1; i<=n; i++)
for (int j=1; j<=m; j++)
intrare>>v[i][j];
bt(1);
iesire<<sol<<endl;
return 0;
}