Pagini recente » Cod sursa (job #2576256) | Cod sursa (job #588677) | Cod sursa (job #2520600) | Cod sursa (job #588682) | Cod sursa (job #2609094)
#include <iostream>
#include <fstream>
using namespace std;
ifstream in("fact.in");
ofstream out("fact.out");
int main()
{
int p;
in >> p;
if(p == 0)
{
out << 1;
return 0;
}
int left = 1, right = 5 * p, mid;
while(left <= right)
{
mid = left + (right - left) / 2;
int s = 0, nr = 5;
while(nr <= mid)
{
s += mid / nr;
nr *= 5;
}
if(s == p)
{
out << mid - mid % 5;
return 0;
}
else if(s < p)
left = mid + 1;
else
right = mid - 1;
}
out << -1;
}