Pagini recente » Cod sursa (job #2506918) | Cod sursa (job #1373397) | Cod sursa (job #1185325) | Cod sursa (job #3156964) | Cod sursa (job #1513014)
#include <fstream>
using namespace std;
ifstream fin("flip.in");
ofstream fout("flip.out");
int m,n,a[17][17];
int x[100],Max;
void back(int k)
{
int i,p,s1,s2,sf=0;
if(k>n)
{
for(i=1;i<=m;i++)
{
s1=0;s2=0;
for(p=1;p<=n;p++)
{
s1=s1+a[i][p];
s2=s2+a[i][p]*(-1);
}
if(s2>s1)
for(p=1;p<=n;p++)
a[i][p]=a[i][p]*(-1);
sf=sf+max(s1,s2);
}
if(sf>Max)
Max=sf;
}
else
{
for(i=0;i<=1;i++)
{
x[k]=i;
if(i==1)
for(p=1;p<=m;p++)
a[p][k]*=(-1);
back(k+1);
for(p=1;p<=m;p++)
a[p][k]*=(-1);
}
}
}
int main()
{
fin>>m>>n;
int i,j;
for(i=1;i<=m;i++)
for(j=1;j<=n;j++)
fin>>a[i][j];
fin.close();
back(1);
fout<<Max;
fout.close();
return 0;
}