Cod sursa(job #2699150)

Utilizator gasparrobert95Gaspar Robert Andrei gasparrobert95 Data 23 ianuarie 2021 18:54:13
Problema Factorial Scor 60
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.55 kb
#include <bits/stdc++.h>
#define ll long long
using namespace std;
ifstream fin("fact.in");
ofstream fout("fact.out");

ll zero(ll nr) {
	ll ans = 0;
	for (ll i = 5; i <= nr; i *= 5)
		ans += nr / i;
	return ans;
}

int main() {
    ll p, rez = 0, st = 1, dr = 1e8;
    fin >> p;
    while (st <= dr) {
        ll mij = (st + dr) / 2;
        if (zero(mij) < p)
            st = mij + 1;
        else
            dr = mij - 1, rez = mij;
    }
    if (zero(rez) != p)
        fout << -1;
    else
        fout << rez;
    return 0;
}