Pagini recente » Cod sursa (job #887439) | Cod sursa (job #1814368) | Cod sursa (job #2246909) | Cod sursa (job #845410) | Cod sursa (job #2602094)
#include <cstdio>
#include <climits>
using namespace std;
const long long INF = LLONG_MAX;
long long lagrange(long long n)
{
long long p = 5 , nr = 0;
while(p <= n)
{
nr = nr + n / p;
p = p * 5;
}
return nr;
}
long long bs(long long k)
{
long long st , dr , med , last;
st = 1;
dr = INF;
while(st < dr)
{
med = (st + dr) / 2;
if(lagrange(med) == k)
dr = med;
else if(lagrange(med) > k)
dr = med - 1;
else
st = med + 1;
}
return st;
}
int main()
{
freopen("fact.in" , "r" , stdin);
freopen("fact.out" , "w" , stdout);
long long n , nr;
scanf("%lld" , &n);
nr = bs(n);
printf("%lld\n" , nr);
return 0;
}