Cod sursa(job #3317977)

Utilizator adimiclaus15Miclaus Adrian Stefan adimiclaus15 Data 26 octombrie 2025 12:49:33
Problema Factorial Scor 5
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.69 kb
#include <bits/stdc++.h>
using namespace std;

long long zeros(long long N)
{
    long long s = 0;
    long long f = 5;
    while (f <= N)
    {
        s += N / f;
        f = 5;
    }
    return s;
}

int main()
{
    ifstream f("fact.in");
    ofstream g("fact.out");

    long long P;
    f >> P;

    long long st = 1;
    long long dr = 5LL * P + 5;
    long long ans = -1;

    while (st <= dr)
    {
        long long mid = (st + dr) / 2;
        long long z = zeros(mid);

        if (z < P)
            st = mid + 1;
        else if (z > P)
            dr = mid - 1;
        else
        {
            ans = mid;
            dr = mid - 1;
        }
    }

    g << ans << "\n";
    return 0;
}