Cod sursa(job #377958)

Utilizator LauraTudorTudor Laura LauraTudor Data 26 decembrie 2009 23:43:19
Problema Jocul Flip Scor 30
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.91 kb
#include<stdio.h>
int n,m,i,j,s,s2,a[16][16];
int verif1()
{
	for(i=0;i<n;i++){
		s2=0;
		for(j=0;j<m;j++)
			s2=s2+a[i][j];
		if(s2<0)
			return 1;
	}
	return 0;
}
int verif2(){
	for(j=0;j<m;j++){
		s2=0;
		for(i=0;i<n;i++)
			s2=s2+a[i][j];
		if(s2<0)
			return 1;
	}
	return 0;
}

int main(){
	FILE *fin;
	
	fin=fopen("flip.in","rt");
	fscanf(fin,"%d",&n);
	fscanf(fin,"%d",&m);
	for(i=0;i<n;i++)
		for(j=0;j<m;j++)
			fscanf(fin,"%d",&a[i][j]);
	while(verif1()||verif2()){

	for(i=0;i<n;i++){
		s2=0;
		for(j=0;j<m;j++)
			s2=s2+a[i][j];
		if(s2<0){
			for(j=0;j<m;j++)
				a[i][j]=a[i][j]*(-1);
		}
	}
	for(j=0;j<m;j++){
		s2=0;
		for(i=0;i<n;i++)
			s2=s2+a[i][j];
		if(s2<0){
			for(i=0;i<n;i++)
				a[i][j]=a[i][j]*(-1);
		}
	}
	}
	FILE *fout;
	fout=fopen("flip.out","wt");
	for(i=0;i<n;i++)
		for(j=0;j<m;j++)
			s=s+a[i][j];
	fprintf(fout,"%d",s);
	return 0;
}