Pagini recente » Cod sursa (job #1044067) | Cod sursa (job #1711957) | Cod sursa (job #273377) | Cod sursa (job #1079240) | Cod sursa (job #237860)
Cod sursa(job #237860)
#include<stdio.h>
long P;
long nrz(long n)
{ long nrz=0;
while(n!=0)
{
nrz+=n/5;
n/=5;
}
return nrz;
}
int main()
{
freopen("fact.in","r",stdin);
freopen("fact.out","w",stdout);
scanf("%ld",&P);
long st=0,dr=200000000;
if(P==0)
printf("1\n");
int ok=0;
while (st<=dr)
{
long mij=(dr+st)/2;
long nrm=nrz(mij);
if (nrm==P)
{ ok=1;
if(mij%5==0)
printf("%ld\n",mij);
else {while(mij%5!=0)
mij--;
printf("%ld\n",mij);
}
break;
}
else if (nrm>P)
dr=mij-1;
else
st=mij+1;
}
if(ok==0)
printf("-1\n");
return 0;
}