Pagini recente » Cod sursa (job #2737713) | Cod sursa (job #1126242) | Cod sursa (job #92424) | Cod sursa (job #2611023) | Cod sursa (job #311191)
Cod sursa(job #311191)
#include<stdio.h>
int b[13],i,p,q,nr,ok,mij,k,x;
int z(int a,int i1)
{ if(b[i1]<a) return a/b[i1]+ z(a,i1+1);
else return 0;
}
int main()
{ freopen("fact.in","r",stdin);
freopen("fact.out","w",stdout);
scanf("%d",&nr);
if(nr==0) { printf("1\n");
fclose(stdin);
fclose(stdout);
return 0;
}
b[1]=5;
for(i=2;i<=12;i++) b[i]=5*b[i-1];
p=1;
q=5*nr;
while(!ok&&p<=q) { mij=(p+q)/2;
k=z(mij,1);
if(nr==k) ok=1;
else if(nr<k)q=mij-1;
else if(nr>k)p=mij+1;
}
while(mij%5!=0) --mij;
printf("%d\n",mij);
fclose(stdin);
fclose(stdout);
return 0;
}