Pagini recente » Cod sursa (job #859261) | Cod sursa (job #432083) | Profil mihaitibi | Cod sursa (job #2216005) | Cod sursa (job #2510010)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("fact.in");
ofstream fout("fact.out");
long long zerouri(long long numar)
{
long long sum = 0;
while (numar)
{
sum += numar / 5;
numar /= 5;
}
return sum;
}
long long cautare_binara(long long val)
{
long long left = 0, right = 800000016, solutie = -1;
while (left <= right)
{
int mid = (left + right) / 2;
if (zerouri(mid) == val)
{
solutie = mid;
break;
}
if (zerouri(mid) > val)
right = mid - 1;
if (zerouri(mid) < val)
left = mid + 1;
}
return solutie;
}
int main()
{
long long zero,val;
fin >> zero;
val = cautare_binara(zero);
if (val != -1)
fout << val - val % 5;
else
fout << -1;
}