Cod sursa(job #19430)

Utilizator hazegirlCatalina Predoi hazegirl Data 19 februarie 2007 15:41:53
Problema Jocul Flip Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.03 kb
#include<fstream.h>
int main()
{int m,n,i,j,sp,sn,max=0;
long int a[100][100];
ifstream f("flip.in");
ofstream g("flip.out",ios::out);
f>>n>>m;
for(i=1;i<=n;i++)
	for(j=1;j<=m;j++)
	    f>>a[i][j];
if(n>m)
	{for(j=1;j<=m;j++)
		{sp=0;sn=0;
		 for(i=1;i<=n;i++)
		     {if(a[i][j]>0) sp+=a[i][j];
		      if(a[i][j]<0) sn-=a[i][j];}
		 if(sn>sp) for(i=1;i<=n;i++) a[i][j]*=-1; }
	 for(i=1;i<=n;i++)
		{sp=0;sn=0;
		 for(j=1;j<=m;j++)
		     {if(a[i][j]>0) sp+=a[i][j];
		      if(a[i][j]<0) sn-=a[i][j];}
		 if(sn>sp) for(j=1;j<=m;j++) a[i][j]*=-1; }
	 }

   else  {for(i=1;i<=n;i++)
		{sp=0;sn=0;
		 for(j=1;j<=m;j++)
		     {if(a[i][j]>0) sp+=a[i][j];
		      if(a[i][j]<0) sn-=a[i][j];}
		 if(sn>sp) for(j=1;j<=m;j++) a[i][j]*=-1; }
	  for(j=1;j<=m;j++)
		{sp=0;sn=0;
		 for(i=1;i<=n;i++)
		     {if(a[i][j]>0) sp+=a[i][j];
		      if(a[i][j]<0) sn-=a[i][j];}
		 if(sn>sp) for(i=1;i<=n;i++) a[i][j]*=-1; }

	 };
for(i=1;i<=n;i++)
      for(j=1;j<=m;j++)
	  max+=a[i][j];
g<<max;
f.close(); g.close();
return 1;
}