Cod sursa(job #697067)

Utilizator manutrutaEmanuel Truta manutruta Data 28 februarie 2012 21:56:05
Problema Factorial Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.46 kb
#include<fstream>
using namespace std;
int main()
{
	ifstream fcin("fact.in");
	ofstream fcout("fact.out");
	int p,i,j,m,x,nr,ok=1;
	fcin>>p;
	if(p==0)
		fcout<<1;
	else
	{
		for(i=1,j=5*p;i<=j && ok==1;)
		{
			m=(i+j)/2;
			x=m;
			nr=0;
			while(x!=0)
			{
			nr+=x/5;
			x/=5;
			}
			if(nr==p)
			{
			fcout<<m-m%5;
			ok=0;
			}
			else
			if(nr<p)
				i=m+1;
			else
				j=m-1;
		}
		if(ok==1)
			fcout<<-1;
	}
	return 0;
}