Pagini recente » Cod sursa (job #2726950) | Cod sursa (job #875281) | Cod sursa (job #2585950) | Cod sursa (job #48669) | Cod sursa (job #1630159)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("flip.in");
ofstream fout("flip.out");
int n, m, a[17][17], suma, sumamax, x[50];
void citire()
{
fin >> n >> m;
for(int i=1; i<=n; i++)
for(int j=1; j<=m; j++)
fin >> a[i][j];
}
void calculeaza()
{
int s;
for(int i=1; i<=n; i++)
{
s=0;
for(int j=1; j<=m; j++)
{
s += a[i][j] * x[j];
}
if(s<0)
suma-=s;
else suma+=s;
}
}
void bkt(int k)
{
if(k>m)
{
suma = 0;
calculeaza();
if(suma > sumamax)
sumamax=suma;
}
else for(int i=0; i<=1; i++)
{
x[k] = (i==0?-1:1);
bkt(k+1);
}
}
int main()
{
citire();
bkt(1);
fout << sumamax;
return 0;
}