Pagini recente » Cod sursa (job #2357403) | Cod sursa (job #2576145) | Cod sursa (job #2932058) | Cod sursa (job #3171187) | Cod sursa (job #202515)
Cod sursa(job #202515)
#include <stdio.h>
#include <values.h>
#include <math.h>
long zerouri(long n)
{
long zero=0;
int i;
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=1000000000;
long m=0;
long rasp=0,cate=0;
if (p!=0)
{
while (st<=dr)
{
m=(st+dr)/2;
if (p==zerouri(m))
{
rasp=m;
cate=zerouri(m);
break;
}
if (p<zerouri(m))
{
dr=m-1;
} else st=m+1;
}
} else
{
printf("1");
return 0;
}
while (zerouri(rasp)==cate)
rasp--;
printf("%d",rasp+1);
// printf("%ld",zerouri(p));
return 0;
}