Pagini recente » Cod sursa (job #158234) | Cod sursa (job #1587269) | Cod sursa (job #923448) | Cod sursa (job #122335) | Cod sursa (job #2047307)
#include <fstream>
using namespace std;
ifstream fin("flip.in");
ofstream fout("flip.out");
int n,m;
int A[20][20];
bool F[20];
int sm=-1000000000;
void bkt(int k)
{
if (k==n)
{
int s1=0,s2=0,st=0;
for (int j=1;j<=m;j++)
{
s1=0;
s2=0;
for (int i=1;i<=n;i++)
{
int x;
if (F[i]==0)
x=A[i][j];
else
x=-A[i][j];
s1=s1+x;
s2=s2+(-x);
}
st+=max(s1,s2);
}
sm=max(sm,st);
}
else
{
for (int i=0;i<=1;i++)
{
F[k+1]=i;
bkt(k+1);
}
}
}
int main()
{
fin>>n>>m;
for (int i=1;i<=n;i++)
for (int j=1;j<=m;j++)
fin>>A[i][j];
bkt(0);
fout<<sm;
return 0;
}