Cod sursa(job #468224)

Utilizator IrnukIrina Grosu Irnuk Data 2 iulie 2010 19:51:40
Problema Jocul Flip Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.9 kb
#include <fstream>
#define NMAX 20

using namespace std;

int n,m;
long fil[NMAX][NMAX],s,maxim;

int main()
{
	int i,j;
	fstream fin,fout;

	fin.open("filip.in",ios::in);
	fout.open("filip.out",ios::out);

	fin>>n>>m;
	for(i=0;i<n;i++)
	{
		for(j=0;j<m;j++)
		{
			fin>>fil[i][j];
			fil[n][j]+=fil[i][j];
			fil[i][m]+=fil[i][j];
			s+=fil[i][j];
		}
	}

	for(j=0;j<m;j++)
	{
		if(fil[n][j]<0)
		{
			for(i=0;i<n;i++)
			{
				fil[i][j]=-fil[i][j];
				fil[i][m]=fil[i][m]+2*fil[i][j];
			}
			fil[n][j]=-fil[n][j];
			s=s+2*fil[n][j];
			if(s>maxim)
				maxim=s;
		}
	}

	for(i=0;i<n;i++)
	{
		if(fil[i][m]<0)
		{
			for(j=0;j<m;j++)
			{
				fil[i][j]=-fil[i][j];
				fil[n][j]=fil[n][j]+2*fil[i][j];
			}
			fil[i][m]=-fil[i][m];
			s=s+2*fil[i][m];
			if(s>maxim)
				maxim=s;
		}
	}

	fout<<maxim<<'\n';
	fin.close();
	fout.close();
	return 0;
}