Cod sursa(job #442082)

Utilizator bog29Antohi Bogdan bog29 Data 13 aprilie 2010 20:59:18
Problema Factorial Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.58 kb
#include<fstream>
#include<math.h>
using namespace std;
ifstream in("fact.in");
ofstream out("fact.out");

unsigned long n,sol;

unsigned long nrz(unsigned long k)
{	long long nr=1,s=0;
	nr=k;
	while(nr!=0)
	{	s+=(nr/5);
		nr/=5;
	}
	return s;	
}	

void bin_search()
{	unsigned long l,r,m;
	l=1;
	r=1000000000;
	while(l<r)
	{	m=(l+r)/2;
		if(nrz(m)==n)
		{	sol=m;
			r=m;
		}
		else if(nrz(m) < n)
			l=m+1;
		else if(nrz(m) > n)
			r=m;	
	}
	if(!sol)sol=-1;
	out<<sol;
}	


int main()
{	in>>n;
	in.close();
	bin_search();
	out.close();
	return 0;
}