Cod sursa(job #202514)
#include <stdio.h>
#include <values.h>
#include <math.h>
long zerouri(long n)
{
long zero=0;
int i,max=0;
for (i=1;i<=n;i++)
{
if (pow(5,i)<=n)
{
zero+=n/pow(5,i);
} else break;
}
return zero;
}
long p,rez=0;
int main()
{
freopen("fact.in","r",stdin);
freopen("fact.out","w",stdout);
scanf("%ld",&p);
long st=0,dr=2000000;
long m=0;
if (p!=0)
{
while (st<dr)
{
m=(st+dr)/2;
if (p==zerouri(m))
{
printf("%ld",m-4);
break;
}
if (p<zerouri(m))
{
dr=m-1;
} else st=m+1;
}
} else
printf("1");
// printf("%ld",zerouri(p));
return 0;
}