Cod sursa(job #2111943)

Utilizator MateiAruxandeiMateiStefan MateiAruxandei Data 22 ianuarie 2018 20:08:40
Problema Factorial Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.72 kb
#include <fstream>

using namespace std;

ifstream fin("fact.in");
ofstream fout("fact.out");

long long p[] = {1, 5, 25, 125, 625, 3125, 15625, 78125, 390625, 1953125, 9765625, 48828125, 244140625, 1220703125, 6103515625, 30517578125};

int main()
{
    long long val;
    fin >> val;

    long long  st = val + 1, dr = 20000000000, rez = -1;
    while(st <= dr){
        long long mid = (st + dr) / 2;

        long long nrzero = 0;
        long long nr = 1;
        while(p[nr] <= mid){
            nrzero += (mid / p[nr]);
            ++nr;
        }
        if(nrzero >= val)
            rez = mid, dr = mid - 1;
        else
            st = mid + 1;
    }

    fout << rez << '\n';
    return 0;
}