Pagini recente » Cod sursa (job #253932) | Cod sursa (job #884715) | Cod sursa (job #475485) | Cod sursa (job #2639604) | Cod sursa (job #60916)
Cod sursa(job #60916)
#include <stdio.h>
#include <math.h>
#include <mem.h>
int n,m,a[20][20],i,j,b[3][20];
long po,ne;
int main()
{
FILE *fi=fopen("flip.in","r"), *fo=fopen("flip.out","w");
fscanf(fi,"%d %d",&n,&m);
setmem(a,sizeof(a),0);
setmem(b,sizeof(b),0);
for(i=1;i<=n;i++)
{ po=ne=0;
for(j=1;j<=m;j++)
{ fscanf(fi,"%d",&a[i][j]);
if(a[i][j]<0)ne+=a[i][j];
else po+=a[i][j];
}
if(abs(po)<abs(ne))b[1][i]=1;
}
for(i=1;i<=m;i++)
{ po=ne=0;
for(j=1;j<=n;j++)
{ if(a[j][i]<0)ne+=a[j][i];
else po+=a[j][i];
}
if(abs(po)<abs(ne))b[2][i]=1;
}
for(i=1;i<=5;i++)
{
if(b[1][i]==1)
{
for(j=1;j<=m;j++)
a[i][j]*=-1;
}
if(b[2][i]==1)
{
for(j=1;j<=n;j++)
a[j][i]*=-1;
}
}
long s=0;
for(i=1;i<=n;i++)
for(j=1;j<=m;j++)
s+=a[i][j];
fprintf(fo,"%ld",s);
return 0;
}