Pagini recente » Cod sursa (job #2986353) | Cod sursa (job #2858483) | Cod sursa (job #2766705) | Cod sursa (job #858943) | Cod sursa (job #1917581)
#include <stdio.h>
using namespace std;
FILE *f,*g;
int fr[22]={0,5,25,125,625,3125,15625,78125,390625,1953125,9765625,48828125,244140725,1220703125};
int main()
{
f=fopen("fact.in","r");
g=fopen("fact.out","w");
long long mij,p,s,d,i,zero,nr0=0;
fscanf(f,"%lld",&p);
if(p==0)
{
fprintf(g,"1");
}
else
{
s=1,d=p*5;
while(s<=d)
{
mij=(s+d)/2;
nr0=0;
for(i=1;fr[i]<=mij;i++)
{
nr0+=mij/fr[i];
}
if(nr0==p)
{
zero=mij;
d=mij-1;
}
else
{
if(nr0>p)
{
d=mij-1;
}
if(nr0<p)
{
s=mij+1;
}
}
}
fprintf(g,"%lld",zero);
}
fclose(f);
fclose(g);
return 0;
}