Pagini recente » Cod sursa (job #1783240) | Cod sursa (job #323294) | Cod sursa (job #1450707) | Cod sursa (job #500108) | Cod sursa (job #116172)
Cod sursa(job #116172)
#include<stdio.h>
long int nrzero(long int n){
long int s=0;
long int c;
c=5;
while(c<=n){
s=s+n/c;
c=c*5;
}
return s;
}
int main(){
long int pp,p,u,m,nrz;
FILE *f=fopen("fact.in","r");
fscanf(f,"%ld",&pp);
fclose(f);
FILE *g=fopen("fact.out","w");
if(pp==0){fprintf(g,"%d",1);}
else{
p=1;
u=2000000000;
while(p<u){
m=(p+u)/2;
if(pp>nrzero(m)){
p=m+1;
}
else u=m-1;
}
if(nrzero(p)!=pp&&nrzero(p+1)!=pp){fprintf(g,"%d",-1);}
else{
if(nrzero(p)==pp){
while(nrzero(p)==pp){
p--;
}
}
fprintf(g,"%ld",p+1);
}
fclose(g);
}
return 0;
}