Cod sursa(job #3179021)

Utilizator GabrielMarfonMarfon Gabriel GabrielMarfon Data 2 decembrie 2023 21:21:21
Problema Factorial Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.64 kb
#include <iostream>
#include <fstream>

#define int long long

using namespace std;

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

int cnt(int x){
    int ans = 0;
    for(int p = 5; p <= x; p *= 5){
        ans += (x / p);
    }
    return ans;
}

signed main(){

    int p;
    fin >> p;

    int st = 0, dr = 1000000000000ll;

    while(dr - st > 1){
        int mid = (st + dr) / 2;
        if(cnt(mid) >= p){
            dr = mid;
        }else{
            st = mid;
        }
    }

    if(cnt(dr) != p){
        fout << -1 << '\n';
    }else{
        fout << dr << '\n';
    }

    return 0;
}