Pagini recente » Istoria paginii utilizator/szaszdavid | Cod sursa (job #1591628) | Cod sursa (job #626627) | Cod sursa (job #2550891) | Cod sursa (job #571859)
Cod sursa(job #571859)
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
ifstream f ("fact.in");
ofstream g ("fact.out");
long long P , st , dr , mid , cpy , sol , aux = 4000000016;
f >> P;
st = 1;
dr = 4000000015;
while (st < dr)
{
sol = 0;
mid = (st + dr) / 2;
cpy = mid;
while (cpy != 0)
{
cpy /= 5;
sol += cpy;
}
if (sol < P)
st = mid + 1;
else if (sol == P)
{
if (mid < aux)
aux = mid;
dr = aux;
}
else dr = mid - 1;
}
if (aux != 4000000016)
g << aux;
else g << -1;
return 0;
}