Pagini recente » Cod sursa (job #1222044) | Cod sursa (job #583604) | Cod sursa (job #159939) | Cod sursa (job #332068) | Cod sursa (job #1803690)
#include <stdio.h>
inline long long leg(long long n){
long long p5=5LL,r=0LL;
while(p5<=n){
r+=n/p5;
p5*=5LL;
}
return r;
}
int main()
{
FILE*fin,*fout;
long long a,r,p;
fin=fopen("fact.in","r");
fscanf(fin,"%lld",&p);
fclose(fin);
for(a=(1<<30),r=0;a>0;a>>=1)
if(leg(r+a)<p)
r+=a;
fout=fopen("fact.out","w");
if(leg(r+1)==p)
fprintf(fout,"%lld\n",r+1);
else
fprintf(fout,"-1\n");
fclose(fout);
return 0;
}