Cod sursa(job #2524298)

Utilizator lucamLuca Mazilescu lucam Data 15 ianuarie 2020 13:02:08
Problema Factorial Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.53 kb
#include <cstdio>
#include <algorithm>

auto nr0(int x) -> int {
    int nr = 0;
    while (x >= 5)
        nr += (x /= 5);
    return nr;
}

auto main() -> int {
    freopen("fact.in", "r", stdin);
    freopen("fact.out", "w", stdout);
    int p;
    scanf("%d", &p);
    int st = 1, dr = 5e8, m, rez;
    while (st < dr) {
        m = (st + dr) / 2;
        if (nr0(m) >= p)
            dr = m;
        else
            st = m + 1;
    }
    if (nr0(st) != p)
        rez = -1;
    else rez = st;
    printf("%d\n", rez);
    return 0;
}