Cod sursa(job #246478)

Utilizator mardeiasIancu Matei mardeias Data 20 ianuarie 2009 21:58:42
Problema Jocul Flip Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.14 kb
//Pentru Visual C++
#include <iostream>
#include <fstream>

//using namespace std;

//Pentru Borland
//#include <iostream.h>
//#include <fstream.h>

fstream fisIN("flip.in", ios::in);
fstream fisOUT("flip.out", ios::out);

int main()
{
	int m, n, i, j;
	long int flip[16][16], suma_el, suma_neg, suma_tot;

	//citire numar linii, coloane
	fisIN>>m;
	fisIN>>n;

	//citire matrice
	for(i=0; i<m; i++)
	{
		suma_el=0;
		suma_neg=0;
		for(j=0; j<n; j++)
		{
			fisIN>>flip[i][j];
			
			suma_el+=flip[i][j];
			suma_neg-=flip[i][j];
		}
		if(suma_neg>suma_el)
		{
			//fisOUT<<"Se actioneaza asupra liniei "<<i+1;
			for(j=0; j<n; j++)
			{
				flip[i][j]*=-1;
			}
		}
	}

	for(j=0; j<n; j++)
	{
		suma_el=0;
		suma_neg=0;
		for(i=0; i<m; i++)
		{
			suma_el+=flip[i][j];
			suma_neg-=flip[i][j];
		}
		
		if(suma_neg>suma_el)
		{
			//fisOUT<<"Se actioneaza asupra coloanei "<<j+1;
			for(i=0; i<m; i++)
			{
				flip[i][j]*=-1;
			}
		}
	}

	suma_tot=0;
	for(i=0; i<m; i++)
	{
		for(j=0; j<n; j++)
		{
			suma_tot+=flip[i][j];
		}
	}
	fisOUT<<suma_tot;
	
	fisIN.close();
	fisOUT.close();
}