Cod sursa(job #1384863)

Utilizator apostolandreiApostol Andrei Laurentiu apostolandrei Data 11 martie 2015 14:49:35
Problema Factorial Scor 15
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.51 kb
#include <iostream>
#include <fstream>

using namespace std;

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

long long zero (int n){
  int nr = 0;
  while (n >= 5){
    nr += n/5;
    n /= 5;
  }
  return nr;
}

long long solve(int p){
  long long i = 0;
  long long pas = 1 << 31;
  while (pas != 0){
    if (zero(i+pas) < p)
        i += pas;
    pas /= 2;
  }
  if (zero(i+1) == p) return i+1;
  return -1;
}

int main()
{
    int p;
    in >> p;
    out << solve(p);
    return 0;
}