Cod sursa(job #583380)

Utilizator lily3Moldovan Liliana lily3 Data 19 aprilie 2011 20:28:03
Problema Factorial Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.55 kb
#include<fstream>
#define inf 999999999
using namespace std;

ofstream g("fact.out");
int p;
int fact(int x)
{
	int nr0=0;
	while(x/5)
		nr0+=x/5,x/=5;
	return nr0;
}
int det()
{
	int a=0,b=inf,mij;
	unsigned long rez;
	while(a<=b)
	{
		mij=(a+b)/2;
		//g<<mij<<" "<<fact(mij)<<"\n";
		if(fact(mij)>p)
			b=mij-1;
		else
			if(fact(mij)<p)
				a=mij+1;
			else
			{
				rez=5*(mij/5);
				return rez;
			}
	}
	return -1;
}
int main()
{
	ifstream f("fact.in");
	
	f>>p;
	if(p==0)
		g<<1;
	else
	g<<det()<<"\n";
	return 0;
}