Cod sursa(job #341233)

Utilizator Mar1vsVrancianu Marius Mar1vs Data 17 august 2009 21:08:29
Problema Jocul Flip Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.2 kb
#include<fstream.h>
#include<math.h>

ifstream f("flip.in");
ofstream g("flip.out");

short n,m;
long x[16][16];
int sn,sp,s=0,i,j;

int main()
{
 f>>n;
 f>>m;
 for(i=1;i<=n;i++)
    for(j=1;j<=m;j++) f>>x[i][j];
 if(m>n) {
	  for(i=1;i<=n;i++){sn=0;
			    sp=0;
			    for(j=1;j<=m;j++) {if(x[i][j]<0) sn=sn+x[i][j];
							else sp=sp+x[i][j];
					       }
			    if(abs(sn)>sp) for(j=1;j<=m;j++) x[i][j]=x[i][j] * (-1);
			    }
	  for(j=1;j<=m;j++){sn=0;
			    sp=0;
			    for(i=1;i<=n;i++) {if(x[i][j]<0) sn=sn+x[i][j];
							else sp=sp+x[i][j];
					       }
			    if(abs(sn)>sp) for(i=1;i<=n;i++) x[i][j]=x[i][j] * (-1);
			    }
	  }
    else{
	 for(j=1;j<=m;j++){sn=0;
			   sp=0;
			   for(i=1;i<=n;i++) {if(x[i][j]<0) sn=sn+x[i][j];
						       else sp=sp+x[i][j];
					      }
			   if(abs(sn)>sp) for(i=1;i<=n;i++) x[i][j]=x[i][j] * (-1);
			   }
	 for(i=1;i<=n;i++){sn=0;
			   sp=0;
			   for(j=1;j<=m;j++) {if(x[i][j]<0) sn=sn+x[i][j];
						       else sp=sp+x[i][j];
					      }
			   if(abs(sn)>sp) for(j=1;j<=m;j++) x[i][j]=x[i][j] * (-1);
			   }
	 }
 for(i=1;i<=n;i++)
    for(j=1;j<=m;j++) s=s+x[i][j];
 g<<s;
 f.close();
 g.close();
 return 0;
}