Cod sursa(job #1048)

Utilizator osozgOzgur Osman osozg Data 12 decembrie 2006 15:19:41
Problema Jocul Flip Scor 20
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.05 kb
#include<stdio.h>
FILE *f,*g;
int N,M,i,j,s,si,sj;
long c[16][16];
int rand ()
{
  int k,l;
  for (k=0;k<N;k++)
    {
      s=0;
      for (l=0;l<M;l++) s+=c[k][l];
      if (s<0)
	{
	  for (l=0;l<M;l++) c[k][l]=-c[k][l];
	}
    }
  return 0;
}
int colo ()
{
  int k,l;
  for (l=0;l<M;l++)
    {
      s=0;
      for (k=0;k<N;k++) s+=c[k][l];
      if (s<0)
	{
	  for (k=0;k<N;k++) c[k][l]=-c[k][l];
	}
    }
  return 0;
}
int suma ()
{
  int k,l,sc=0;
  for (k=0;k<N;k++)
    {
      for (l=0;l<M;l++) sc+=c[k][l];
    }
  return sc;
}
int main ()
{
  f=fopen("flip.in","r");
  g=fopen("flip.out","w");
  fscanf(f,"%d%d",&N,&M);
  for (i=0;i<N;i++)
    {
      for (j=0;j<M;j++)
	{
	  fscanf(f,"%d",&c[i][j]);
	}
    }
  si=suma();
  rand();
  s=suma();
  if (s<si) rand();
  colo();
  sj=s;
  s=suma();
  if (s<sj) colo();
  s=0;
  s=suma();
  fprintf(g,"%d",s);
  /*for (i=0;i<N;i++)
    {
      for (j=0;j<M;j++) fprintf(g,"%d ",c[i][j]);
      fprintf(g,"\n");
    }*/
  fcloseall();
  return 0;
}