Cod sursa(job #582354)

Utilizator darius1998noname darius1998 Data 15 aprilie 2011 11:33:15
Problema Factorial Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.56 kb
#include <stdio.h>
int p;
long long ok(long long val)
{
	long long pp,ook;
	pp=5;
	ook=0;
	while(val/pp)
	{
		ook=ook+val/pp;
		pp=pp*5;
	}
	return ook;
}
	
long long bs()
{
	long long med,last=-1,st,dr;
	st=1;
	dr=1ll<<60;
	while(st<=dr)
	{
		med=st+(dr-st)/2;
		if(ok(med)<p)
		{	
			st=med+1;
		}
		else
		{
			dr=med-1;
			last=med;
		}
	}
	return last;
}


int main(){
   long long sst,ddr,b;
	freopen("factorial.in","r",stdin);
   freopen("factorial.out","w",stdout);
   scanf("%d",&p);
	b=bs();
	printf("%lld",b);
   return 0;
}