Pagini recente » Cod sursa (job #2440711) | Cod sursa (job #1259023) | Cod sursa (job #823452) | Cod sursa (job #2310197) | Cod sursa (job #1253865)
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <limits.h>
long long cifra(long long int n)
{
long long int s, p = 5, i;
s = 0;
while(p <= n)
{
s += n / p;
p = p * 5;
}
return s;
}
long long int n, st, dr, mij, ok;
int main()
{
freopen("fact.in", "r", stdin);
freopen("fact.out", "w", stdout);
scanf("%lld", &n);
st = 1;
dr = 1000000000;
ok = 0;
if(n == 0)
{
printf("1");
return 0;
}
while(st <= dr && !ok)
{
mij = (st + dr) / 2;
if(cifra(mij) > n)
dr = mij - 1;
else if(cifra(mij) < n)
st = mij + 1;
else
{
ok = 1;
}
}
while(mij >= 0 && mij % 5 != 0)
mij--;
if(mij != 0)
printf("%lld", mij);
else
printf("-1");
return 0;
}