Pagini recente » Cod sursa (job #1290662) | Cod sursa (job #37021) | Cod sursa (job #622195) | Cod sursa (job #2589678) | Cod sursa (job #61397)
Cod sursa(job #61397)
#include <cstdio>
int n,p,i;
int zero(int x)
{
int sum=0;
while (x)
{
sum+=x/5;
x/=5;
}
return sum;
}
int cautare(int a, int b)
{
int r;
if (a<b)
{
r=zero(5*(a+b)/2);
if (r>p) return cautare(a,(a+b)/2);
if (r<p) return cautare(((a+b)/2+1),b);
if (r==p) return (a+b)/2;
}
else
return (a+b)/2;
}
int main()
{
freopen("fact.in", "r", stdin);
scanf("%d\n", &p);
freopen("fact.out", "w", stdout);
n=cautare(1,100000000);
if (p==0) printf("1\n");
else
{
if (zero(5*n)==p) printf("%d\n", 5*n);
else printf("-1\n");
}
return 0;
}