Cod sursa(job #1243755)

Utilizator mercenarul1Chirila Andrei mercenarul1 Data 16 octombrie 2014 12:57:02
Problema Jocul Flip Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.11 kb
#include <stdio.h>
int m,n ,v[16][16],i,j;
using namespace std;
void linie ()
{
    int s,t;
    for (i=1;i<=n;i++)
    {s=0;t=0;
        for(j=1;j<=m;j++)
        {
            s+=v[i][j];
            t-=v[i][j];
        }
    if (t>s) {for(j=1;j<=m;j++)
        {
            v[i][j]=-v[i][j];
        }

    }
    }
}
void coloana()
{
   int s,t;
    for (j=1;j<=m;j++)
    {s=0;t=0;
        for(i=1;i<=n;i++)
        {
            s+=v[j][i];
            t-=v[j][i];
        }
    if (t>s) {for(i=1;i<=n;i++)
        {
            v[j][i]=-v[j][i];
        }

    }
    }
}
int suma()
{int s=0;
    for(i=1;i<=n;i++)
    {
       for(j=1;j<=m;j++) {s+=v[i][j];}
    }
    return s ;
}
int main()
{    FILE*f=fopen("flip.in","r");
FILE*g=fopen("flip.out","w");
fscanf(f,"%d",&n);
fscanf(f,"%d",&m);
for(i=1;i<=n;i++)
{
    for(j=1;j<=m;j++)
    {

    fscanf(f,"%d",&v[i][j]);
    }
}
j=suma();
linie();
coloana();
i=suma();

  do
  {linie();
  coloana();
  j=i;
  i=suma();

  }while(i>j);

fprintf(g,"%d",i);
fclose(f);
fclose(g);

    return 0;
}