Cod sursa(job #585964)

Utilizator cdascaluDascalu Cristian cdascalu Data 30 aprilie 2011 12:56:40
Problema NumMst Scor 24
Compilator cpp Status done
Runda Algoritmiada 2011, Runda Finală, Clasele 10-12 Marime 0.6 kb
#include<fstream>
#include<math.h>
using namespace std;
int main()
{
	ifstream f("nummst.in");
	int N,i;
	f>>N;
	f.close();
	ofstream g("nummst.out");
	if(N%2==0)
	{
		g<<N/2<<" "<<N/2;
		g.close();
		return 0;
	}
	int div,ok = 0,nr,s=0,aux;
	aux = N/2;
	for(div = aux;div>=1 && !s;--div)
		if(N%div == 0)s = div;
	div = s;//div cel mai mare divizor
	nr = N/div;
	s=0;
	for(i = nr-1;i>=1&&!s;--i)
		if(nr%i==0)s = i;//marimea grupului maxima
	
	for(i=1,aux=0;i<=nr/2;++i)
		aux+=s*div;
	g<<aux<<" "<<N-aux;
	/*while(N)
	{
		g<<s*div<<" ";
		N-=s*div;
	}*/
	g.close();
	return 0;
}