Cod sursa(job #799580)

Utilizator tannous.marcTannous Marc tannous.marc Data 19 octombrie 2012 14:37:29
Problema Factorial Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.49 kb
#include<fstream>
using namespace std;
int i,j,n,k,x,p,ok,s,q,u;
ifstream in("fact.in");
ofstream out("fact.out");
int main()
{
	in>>p;
	if(p==0){
		out<<1;
		return 0;
	}
	else
	{
		q=5;
		u=5*p;
		while(q<=u)
		{
			if((u+q)%2==0)
			i=(u+q)/2;
			else
				i=(u+q)/2-2;
			x=5;
			while(x<=i)
			{
				k=i/x;
				s=s+k;
				x=x*5;
			}
			if(s==p)
			{
				ok=1; out<<i;
				break;
			}
			if(s<p)
			{
				q=i+5;
			}
			else
				u=i-5;
			s=0;
		}
	}
	if(ok==0)
		out<<-1;
	
	return 0;
}