Pagini recente » Cod sursa (job #2300848) | Cod sursa (job #757464) | Cod sursa (job #1274034) | Cod sursa (job #1141285) | Cod sursa (job #281489)
Cod sursa(job #281489)
#include<stdio.h>
#include<math.h>
FILE *f;
FILE *g;
long a[100][100];
int n,m;
void citire()
{
int i,j;
f=fopen("flip.in","r");
g=fopen("flip.out","w");
fscanf(f,"%d%d",&n,&m);
for(i=1; i<=n; i++)
for(j=1; j<=m; j++)
fscanf(f,"%ld",&a[i][j]);
}
void modiflin(int lin)
{
int j;
for(j=1; j<=m; j++)
a[lin][j]=-a[lin][j];
}
void modifcol(int col)
{
int i;
for(i=1; i<=n; i++)
a[i][col]=-a[i][col];
}
int veriflin(int lin)
{
int i,s1=0,s2=0;
for(i=1; i<=m; i++)
if(a[lin][i]<0) s1+=-a[lin][i];
else s2+=a[lin][i];
if(s1>s2) return 1;
return 0;
}
int verifcol(int col)
{
int i,s1=0,s2=0;
for(i=1; i<=n; i++)
if(a[i][col]<0) s1+=-a[i][col];
else s2+=a[i][col];
if(s1>s2) return 1;
return 0;
}
long suma()
{
int i,j;
long s=0;
for(i=1; i<=n; i++)
for(j=1; j<=m; j++)
s+=a[i][j];
return s;
}
/*void afisare()
{
int i,j;
for(i=1; i<=n; i++)
{
for(j=1; j<=m; j++) printf("%d ",a[i][j]);
printf("\n");
}
printf("\n");
}*/
int main(void)
{
int i;
citire();
//afisare();
for(i=1; i<=m; i++)
if(verifcol(i)) modifcol(i);
for(i=1; i<=n; i++)
if(veriflin(i)) modiflin(i);
//afisare();
fprintf(g,"%ld",suma());
fclose(f);
fclose(g);
return 0;
}