Pagini recente » Cod sursa (job #2389063) | simulare-cristi-0 | Cod sursa (job #2017291) | Cod sursa (job #117030) | Cod sursa (job #1281277)
#include <cstdio>
using namespace std;
inline int exp(int n)
{
int p = 5, rasp = 0;
while(p <= n)
{
rasp += n / p;
p *= 5;
}
return rasp;
}
int binar(int st, int dr, int val)
{
int med, last = -1;
while(st <= dr)
{
med = st + (dr - st) / 2;
if(exp(med) == val)
{
last = med;
dr = med - 1;
}
else
if(exp(med) >= val)
dr = med - 1;
else
st = med + 1;
}
return last;
}
int main()
{
freopen("fact.in", "r", stdin);
freopen("fact.out", "w", stdout);
int n;
scanf("%d", &n);
printf("%d\n", binar(1, 2000000000, n));
return 0;
}