Pagini recente » Cod sursa (job #2982256) | Cod sursa (job #2304581) | Cod sursa (job #400227) | Cod sursa (job #996179) | Cod sursa (job #306378)
Cod sursa(job #306378)
#include <stdio.h>
FILE *f,*s;
long long int p,n,st,dr,mij,i,j,rasp;
long long int numarare(long long int x)
{
long long int nrz=0;
for(i=5;i<x;i*=5)
nrz+=x/i;
return nrz;
}
int main()
{
f=fopen("fact.in","r");
s=fopen("fact.out","w");
fscanf(f,"%lld",&p);
st=0;
dr=1000000000;
rasp=-1;
while(st<=dr)
{
mij=(st+dr)/2;
if(numarare(mij)==p)
{
rasp=mij;
break;
}
else
{
if(numarare(mij)>p)
dr=mij-1;
else
st=mij+1;
}
}
if(p==0)
fprintf(s,"1");
//else if(rasp==-1)
//fprintf(s,"-1");
else
fprintf(s,"%lld",rasp-rasp%5);
fclose(s);
return 0;
}