Pagini recente » Cod sursa (job #2128109) | Cod sursa (job #2888995) | Cod sursa (job #1467926) | Cod sursa (job #1365923) | Cod sursa (job #502423)
Cod sursa(job #502423)
#include <fstream.h>
using namespace std;
int main()
{
long int a,v[17][17],c[17],l[17];
int i,j,n,m,b,max;
ifstream f ("flip.in");
ofstream g ("flip.out");
f>>n>>m;
a=max=0;
for (i=0;i<17;i++)c[i]=l[i]=0;
for (i=0;i<n;i++)
for (j=0;j<m;j++)
{
f>>v[i][j];
l[i]+=v[i][j];
c[j]+=v[i][j];
a+=v[i][j];
}
b=1;
max=a;
while (b)
{
b=0;
for (i=0;i<n;i++)
if (l[i]<0)
{
if (max<(a-2*l[i]))
{
l[i]=-l[i];
a+=(2*l[i]);
b=1;
for (j=0;j<m;j++)
c[j]-=2*v[i][j];
max=a;
}
}
for (i=0;i<m;i++)
if (c[i]<0)
{
if (max<(a-2*c[i]))
{
c[i]=-c[i];
a+=(2*c[i]);
b=1;
for (j=0;j<n;j++)
l[j]-=2*v[j][i];
max=a;
}
}
}
g<<max;
return 0;
}