Cod sursa(job #1131912)

Utilizator luci.agheLuci Aghergheloaei luci.aghe Data 2 martie 2014 00:17:34
Problema Jocul Flip Scor 30
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.06 kb
using namespace std; 
#include<fstream>
#include<iostream>


int main()
{
long long i,j,s=0,ok;
	int n,m;
ifstream f("flip.in");
ofstream g("flip.out");
f>>n>>m;
long long a[n+1][m+1];
for(i=1;i<=m;i++)
	a[0][i]=0;
for(i=1;i<=n;i++)
	a[i][0]=0;
	
	for(i=1;i<=n;i++)
	{
		
		for(j=1;j<=m;j++)
			{
				f>>a[i][j];
				a[i][0]+=a[i][j];
				a[0][j]+=a[i][j];
			}
	}


	do
	{
		
		ok=1;
			for(i=1;i<=n;i++)
				if(a[i][0]<0)
					{
						
					a[i][0]*=-1;
					for(j=1;j<=m;j++)
						{
							a[0][j]+=2*(a[i][j]*-1);
							a[i][j]*=-1;
					}
					ok=0;
					
					}
			for(i=1;i<=m;i++)
				if(a[0][i]<0)
				{
					
					a[0][i]*=-1;
					for(j=1;j<=n;j++)
						{
							a[j][0]+=2*(a[j][i]*-1);
							a[j][i]*=-1;
							}
					ok=0;
					
				}
				
	}
	while (ok==0);
	if(m<n)
for(i=1;i<=m;i++)
	s+=a[0][i];
else for(i=1;i<=n;i++)
	s+=a[i][0];
	s=0;
	for(i=1;i<=n;i++)
		
		{cout<<"\n";
			for(j=1;j<=m;j++)
			
			s+=a[i][j];
			cout<<s<<' ';
		}
	

	g<<s;
	f.close();
	g.close();
	return 0;
}