Cod sursa(job #52334)

Utilizator ada_sAda-Mihaela Solcan ada_s Data 18 aprilie 2007 17:51:16
Problema Jocul Flip Scor 30
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.07 kb
#include <fstream>
std::ifstream f1("flip.in");
std::ofstream f2("flip.out");
int main()
{
	long corect, n, m, i, j, s, spoz, sneg, matrice[20][20];
	f1>>n>>m;
	for (i=0; i<n; i++)
	{
		for (j=0; j<m; j++)
		{
			f1>>matrice[i][j];
		}//for j
	}//for i
	do
	{
		corect=1;
		//randuri
		for (i=0; i<n; i++)
		{
			spoz=0;
			sneg=0;
			for (j=0; j<m; j++)
			{
				if (matrice[i][j]<0)
					sneg+=matrice[i][j];
				else
					spoz+=matrice[i][j];
			}//for j
			if ((spoz+sneg)<0)
			{
				for (j=0; j<m; j++)
					matrice[i][j]=-1*matrice[i][j];
				corect=0;
			}//if
		}//for i
		//coloane
		for (j=0; j<m; j++)
		{
			spoz=0;
			sneg=0;
			for (i=0; i<n; i++)
			{
				if (matrice[i][j]<0)
					sneg+=matrice[i][j];
				else
					spoz+=matrice[i][j];
			}//for i
			if ((spoz+sneg)<0)
			{
				for (i=0; i<n; i++)
					matrice[i][j]=-1*matrice[i][j];
				corect=0;
			}//if
		}//for j
	}while (!corect);
	s=0;
	for (i=0; i<n; i++)
		for (j=0; j<m; j++)
			s+=matrice[i][j];
	f2<<s;
	f1.close();
	f2.close();
	return 0;
}//main