Pagini recente » Cod sursa (job #1158125) | Cod sursa (job #325578) | Cod sursa (job #1914687) | Cod sursa (job #3264257) | Cod sursa (job #1978939)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("flip.in");
ofstream fout("flip.out");
int n, m, smax;
int a[18][18], sol[18];
void finalizeaza()
{
int stotal=0, scol;
int i, j;
for(i=1; i<=m; i++)
{
scol=0;
for(j=1; j<=n; j++)
scol+=a[j][i]*sol[j];
if(scol<0)
scol*=(-1);
stotal+=scol;
}
if(stotal>smax)
smax=stotal;
}
void bk(int p)
{
if(p<n)
{
sol[p]=1;
bk(p+1);
sol[p]=-1;
bk(p+1);
}
else
finalizeaza();
}
int main()
{
fin>>n>>m;
int i, j;
for(i=1; i<=n; i++)
for(j=1; j<=m; j++)
fin>>a[i][j];
for(i=1; i<=n; i++)
sol[i]=1;
bk(1);
fout<<smax<<'\n';
return 0;
}