Pagini recente » Cod sursa (job #1551968) | Cod sursa (job #1418154) | Cod sursa (job #995461) | Cod sursa (job #1866924) | Cod sursa (job #2044330)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("flip.in");
ofstream g("flip.out");
int n, m, a[18][18], b[18][18], s[18], c[18], r, su;
void cc(int o)
{
if(o!=n)
{
for(int i=0; i<2; i++)
{
c[o+2]=i;
cc(o+1);
}
}
else
{
for(int i=1; i<=n; i++)
{
for(int j=1; j<=m; j++)
{
if(c[i]==0)
{
b[i][j]=a[i][j];
}
else
{
b[i][j]=-a[i][j];
}
}
}
/*
for(int i=1; i<=n; i++)
{
for(int j=1; j<=m; j++)
{
cout<<b[i][j]<<' ';
}
cout<<'\n';
}
*/
for(int j=1; j<=m; j++)
{
s[j]=0;
}
for(int i=1; i<=n; i++)
{
for(int j=1; j<=m; j++)
{
s[j]=s[j]+b[i][j];
}
}
su=0;
for(int j=1; j<=m; j++)
{
if(s[j]>=0)
su+=s[j];
else
su-=s[j];
}
if(su>r)
r=su;
}
}
int main()
{
f>>n>>m;
for(int i=1; i<=n; i++)
{
for(int j=1; j<=m; j++)
{
f>>a[i][j];
}
}
/*while(1)
{
if(l==m+1)
cout<<max(bun, func());
break;
}*/
r=-1;
cc(0);
g<<r;
return 0;
}