Cod sursa(job #3301077)

Utilizator comanbogdanalexandruAlex Coman comanbogdanalexandru Data 21 iunie 2025 14:42:53
Problema Factorial Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.64 kb
#include <fstream>
#include <iomanip>
using namespace std;
ifstream f("fact.in");
ofstream g("fact.out");

long long zeros(long long n) {
  long long cnt = 0;
  for (long long p = 5; p <= n; p *= 5)
    cnt += n / p;
  return cnt;
}

int cautarebinara(int P) {
  long long st = 1, dr = 500000000, mijloc, cont = 0, rez = -1;
  while (st <= dr) {
    mijloc = (st + dr) / 2;
    cont = zeros(mijloc);

    if (cont == P) {
      rez = mijloc;
      dr = mijloc - 1;
    } else if (cont < P)
      st = mijloc + 1;
    else if (cont > P)
      dr = mijloc - 1;
  }
  return rez;
}

int main() {
  long long n;
  f >> n;
  g << cautarebinara(n);
  return 0;
}