Pagini recente » Cod sursa (job #3262883) | Cod sursa (job #842551) | Cod sursa (job #2335607) | Cod sursa (job #2091883) | Cod sursa (job #1312834)
#include <stdio.h>
long int p,l=1,r = 1000000000/5,m,test;
long int zero(int n)
{
long int p=0;
while(n>=5)
{
p+=n/5;
n/=5;
}
if(n==0) return 1;
return p;
}
int main()
{
FILE *in = fopen("fact.in","r");
FILE *out = fopen("fact.out","w");
fscanf(in,"%ld",&p);
while(l<=r)
{
m = (l+r)/2;
test = zero(5*m);
if(test==p)
break;
else
{
if(test<p)
l = m+1;
else
r = m-1;
}
}
if(p==0) fprintf(out,"%d\n",1);
else if(l>r) fprintf(out,"%d\n",-1);
else
fprintf(out,"%ld\n",5*m);
fclose(in);fclose(out);
return 0;
}