Pagini recente » Borderou de evaluare (job #2908045) | Cod sursa (job #464820) | Cod sursa (job #93129) | Cod sursa (job #1909090) | Cod sursa (job #1803906)
#include <stdio.h>
#include <stdlib.h>
inline int put5(int n)
{
int s=0;
while(n>0)
{
n=n/5;
s+=n;
}
return s;
}
int main()
{
int n,i,p,k;
FILE*fi,*fo;
fi=fopen("fact.in","r");
fo=fopen("fact.out","w");
fscanf(fi,"%d",&n);
i<<28;
p=0;
while(i>0)
{
if(put5(p+i)<=n)
{
p+=i;
}
i/=2;
}
while(put5(p)>=n)
p--;
if(put5(p+1)==n)
fprintf(fo,"%d",p+1);
else fprintf(fo,"-1");
fclose(fi);
fclose(fo);
return 0;
}