Pagini recente » Monitorul de evaluare | Cod sursa (job #1946706) | Istoria paginii utilizator/dyana_valerya | Cod sursa (job #1284856) | Cod sursa (job #1760444)
#include <stdio.h>
inline int legendre(int x)
{
int co=0,p=5;
while(p<=x)
{
co+=x/p;
p*=5;
}
return co;
}
int cbin(int p)
{
int i,j,mij,k;
i=1;j=100000000;
while(i<=j)
{
mij=(i+j)/2;
k=legendre(mij);
if(k==p)
return mij-mij%5;
if(k>p)
j=mij-1;
else
i=mij+1;
}
return -1;
}
int main()
{
FILE *fin,*fout;
fin=fopen("fact.in","r");
fout=fopen("fact.out","w");
int p;
fscanf(fin,"%d",&p);
p=cbin(p);
if(!p)
fprintf(fout,"1");
else
fprintf(fout,"%d",p);
fclose(fin);
fclose(fout);
return 0;
}