Pagini recente » Cod sursa (job #1263500) | Cod sursa (job #199539) | Cod sursa (job #1273010) | Cod sursa (job #1706725) | Cod sursa (job #1284895)
#include <stdio.h>
#include <stdlib.h>
int cifre(int x)
{
int k=0;
while(x)
{
k=k+x/5;
x=x/5;
}
return k;
}
int binar(int st,int dr,int p)
{
if(st==dr) return 0;
if(cifre((st+dr)/2)>p) return binar(st,(st+dr)/2,p);
if(cifre((st+dr)/2)<p) return binar((st+dr)/2+1,dr,p);
return ((st+dr)/2)-((st+dr)/2)%5;
}
int main()
{
FILE *in,*out;
int p,n;
in=fopen("fact.in","r");
out=fopen("fact.out","w");
fscanf(in,"%d",&p);
if(binar(0,5*p,p)) n=binar(0,5*p,p);
else n=-1;
fprintf(out,"%d",n);
return 0;
}