Cod sursa(job #473614)

Utilizator andreigAndrei Geacar andreig Data 30 iulie 2010 16:15:56
Problema Jocul Flip Scor 20
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.96 kb
#include<stdio.h>
#include<stdlib.h>
int n,m;

void col(int p,int **a)
{
    int i;
    int sum=0;
    for(i=0;i<n;i++)
       sum+=a[i][p];
    if(sum<0)
       for(i=0;i<n;i++)
         a[i][p]*=-1;  
}

void lin(int p,int **a)
{
    int j;
    int sum=0;
    for(j=0;j<m;j++)
       sum+=a[p][j];
    if(sum<0)
       for(j=0;j<m;j++)
         a[p][j]*=-1;  
}

int main(void)
{
    FILE * fin = fopen("flip.in","r");
    FILE * fout = fopen("flip.out","w");
    int i,j;
    int **a;
    fscanf(fin,"%d %d",&n,&m);
    a=(int**)malloc(sizeof(int*)*n);
    for(i=0;i<n;i++)
       a[i]=(int*)malloc(sizeof(int)*m);
    for(i=0;i<n;i++)
       for(j=0;j<m;j++)
             fscanf(fin,"%d",&a[i][j]);
             
    for(i=0;i<n;i++)
      lin(i,a);
    for(j=0;j<n;j++)
      col(j,a);
      
    int sum=0;
    for(i=0;i<n;i++)
     for(j=0;j<m;j++)
         sum+=a[i][j];
    fprintf(fout,"%d",sum);     
             
}