Cod sursa(job #517634)

Utilizator LilJoeFangli Andrei LilJoe Data 29 decembrie 2010 13:28:48
Problema Jocul Flip Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.89 kb
#include <fstream.h>

using namespace std;

int n, m, i, j;

void flip(int *a)
{
	if (i==0)
		for (int t=1;t<=n;t++)
			a[t][j] *= -1;
	else
		for (int t=1;t<=m;t++)
			a[i][t] *= -1;
}
void calc(int a*)
{
	int t, r;

	for (t=1;t<=n;t++)
		for (r=1;r<=m;r++)
		{
			a[0][r] += a[t][r];
			a[t][0] += a[t][r];
		}
}

int main()
{
	//Fisierele de citire/scriere date
	fstream f("flip.in", ios::in),
		g("flip.out", ios::out);
	f>>n>>m;

	//Matricea
	int a[n][m];

	//Initializari
	for (i=0;i<=n;i++)
		a[i][0]=0;
	for (i=1;i<=m;i++)
		a[0][i]=0;
	for (i=1;i<=n;i++)
		for (j=1;j<=m;j++)
			f>>a[i][j];

	//Un mic calcul
	calc();

	//Rezolvarea
	j=0;
	for (i=1;i<=n;i++)
		if (a[i][0]<0) flip(a);
	calc();
	i=0;
	for (j=1;j<=m;j++)
		if (a[0][j]<0) flip(a);
	for (i=1;i<=n;i++)
		a[0][0] +=a[i][0];

	g<<a[0][0];

	f.close();
	g.close();

	return 0;
}