Cod sursa(job #3261282)

Utilizator Cyb3rBoltSbora Ioan-David Cyb3rBolt Data 5 decembrie 2024 10:25:49
Problema Factorial Scor 90
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.63 kb
#include <bits/stdc++.h>

using namespace std;
ifstream fin("fact.in");
ofstream fout("fact.out");
#define int unsigned long long
int n;

inline int check(int x) {
    int nr = 5, rez = 0;
    while(nr <= x) {
        rez += x / nr;
        nr *= 5;
    }
    return rez;
}

signed main()
{
    fin >> n;
    int st = 1, dr = 1e18, sol = 1e18;
    while(st <= dr) {
        int mid = (st + dr) / 2;
        int verif = check(mid);
        if(verif < n) st = mid + 1;
        else {
            if(verif == n && mid < sol) sol = mid;
            dr = mid - 1;
        }
    }
    fout << sol;

    return 0;
}