Cod sursa(job #2877884)

Utilizator rares89_Dumitriu Rares rares89_ Data 25 martie 2022 16:05:10
Problema Factorial Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.67 kb
#include <fstream>
#define lli long long int

using namespace std;

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

lli nr(lli n) {
    lli putere = 5LL;
	lli ans = 0;
	while(putere <= n) {
		ans += n / putere;
		putere *= 5LL;
    }
	return ans;
}

lli n;

int main() {
    fin >> n;
    fin.close();
    lli st = 1, dr = (1LL << 62), ans = -1;
    while(st <= dr) {
        lli mid = (st + dr) / 2;
        lli cnt = nr(mid);
        if(cnt == n) {
            ans = mid;
            dr = mid - 1;
        } else if(cnt < n) {
            st = mid + 1;
        } else {
            dr = mid - 1;
        }
    }
    fout << ans;
    return 0;
}