Cod sursa(job #2653762)

Utilizator cyg_dawidDavid Ghiberdic cyg_dawid Data 29 septembrie 2020 00:18:01
Problema Factorial Scor 90
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.66 kb
#include <fstream>
#define ll long long

using namespace std;

ifstream cin("fact.in");
ofstream cout("fact.out");

ll NMAX = 1e9+1;
ll n;
ll st, dr, med;
ll cnt;
ll ans;

void zer() {
    cnt = 0;

    ll aux = 5;
    for(; aux <= med; aux *= 5)
        cnt += med / aux;
}


ll bs() {
    st = 1; dr = NMAX;
    while(st <= dr) {
        med = (st + dr) / 2;
        zer();
        if(cnt == n) {
            ans = med;
            dr = med - 1;
        } else if(cnt > n)
            dr = med - 1;
        else
            st = med + 1;
    }
    return ans;
}

int main()
{
    cin >> n;
    cout << bs();
    return 0;
}