Pagini recente » Cod sursa (job #2547556) | Cod sursa (job #182846) | Cod sursa (job #554420) | Cod sursa (job #2655247) | Cod sursa (job #1010459)
#include <fstream>
using namespace std;
unsigned long long nr0(unsigned long long x)
{
unsigned long long ret = 0;
for (unsigned long long i = 5; i <= x ; i *= 5)
ret += x/i;
return ret;
}
int main()
{
ifstream IN ("fact.in");
ofstream OUT ("fact.out");
unsigned long long p; IN >> p;
unsigned long long noo5 = 0;
unsigned long long a = 1, b = p*5, c = (a+b) / 2;
while (a <= b)
{
c = (a+b)/2;
noo5 = nr0(c);
if (noo5 >= p)
{
b = c - 1;
}
else
{
a = c + 1;
}
}
if (noo5 == p)
{
OUT << c << "\n";
return 0;
}
OUT << "-1\n";
return 0;
}