Pagini recente » Profil angel_raluk | Cod sursa (job #1146372) | Cod sursa (job #2194938) | Cod sursa (job #1983645) | Cod sursa (job #1107427)
#include <iostream>
#include <fstream>
using namespace std;
ifstream in("flip.in");
ofstream out("flip.out");
int main()
{
int n,m,a[100],i,nr,max,min,c,sp,x=0,sn,s=0;
in>>n>>m;
for (i=1;i<=n*m;i++)
in>>a[i];
if (n<m)
{
min=n;
max=m;
}
else
{
min=m;
max=n;
}
for (int f=1;f<=max;f++)
{
c=min;
for (i=1;i<=min;i++)
{
sn=0;
sp=0;
c--;
for (nr=1;nr<=max;nr++)
{
if (a[nr*min-c]>0)
sp=sp+a[nr*min-c];
else
sn=sn-a[nr*min-c];
}
if (sn>sp)
{
for (nr=1;nr<=max;nr++ )
a[nr*min-c]=-a[nr*min-c];
}
}
x=0;
for (i=1;i<=max;i++)
{
nr=0;
sn=0;
sp=0;
while (nr<min)
{
if (a[x]>0)
sp=sp+a[x];
else
sn=sn-a[x];
nr++;
x++;
}
if (sn>sp)
{
for (int j=x-min;j<=x;j++)
a[j]=-a[j];
}
}
}
for (i=1;i<=n*m;i++)
s=s+a[i];
out<<s;
}