Pagini recente » Cod sursa (job #1417146) | Cod sursa (job #2715642) | Profil mihaigusa | Cod sursa (job #1377907) | Cod sursa (job #1768533)
#include <cstdio>
using namespace std;
int zero(int n)
{
int num = 0, c = 5;
while(c <= n)
{
num += n / c;
c *= 5;
}
return num;
}
int main()
{
int p, st = 1, dr = 2147483646, n, m;
freopen("fact.in", "r", stdin);
freopen("fact.out", "w", stdout);
while(st <= dr)
{
m = ((st + dr) >> 1);
if(zero(m) >= p)
{
dr = m - 1;
n = m;
}
else
st = m + 1;
}
if(zero(n) == p)
printf("%d\n", n);
else
printf("-1\n");
return 0;
}