Cod sursa(job #3036815)

Utilizator Mihai_OctMihai Octavian Mihai_Oct Data 25 martie 2023 10:13:29
Problema Factorial Scor 15
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.61 kb
#include <bits/stdc++.h>
#define mod 20011

using namespace std;

ifstream fin("fact.in");
ofstream fout("fact.out");
int p, st, dr, m, z, r;

static inline int zero(int nr) {
    int nm = 0;
    while(nr >= 5) {
        nr /= 5;
        nm += nr;
    }
    return nm;
}

int main() {
    fin >> p;
    if(p == 0) {
        fout << "1";
        return 0;
    }
    st = 1;
    dr = p * 5;
    while(st <= dr) {
        m = st + (dr - st) / 2;
        if(zero(m) <= p) st = m + 1;
        else dr = m - 1, r = m;
    }
    if(zero(r) == p) fout << st;
    else fout << "-1";

    return 0;
}