Cod sursa(job #3176435)
Utilizator | Cojocaru Calin Marcu NiffSniff | Data | 27 noiembrie 2023 07:56:03 |
---|---|---|---|
Problema | Factorial | Scor | 90 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva de probleme | Marime | 0.55 kb |
#include <fstream>
using namespace std;
ifstream cin ("fact.in");
ofstream cout ("fact.out");
long long f(long long x)
{
long long cnt = 0, p = 5;
while (x >= p)
{
cnt += x / p;
p*=5;
}
return cnt;
}
int main()
{
long long n;
cin >> n;
long long st = 1, dr = 400000015;
while (st<=dr)
{
long long mid = (st+dr)/2;
if (f(mid) < n)
{
st = mid+1;
}
else
{
dr = mid-1;
}
}
cout << st;
}