Cod sursa(job #2295083)

Utilizator stan_flaviusStan Flavius Stefan stan_flavius Data 3 decembrie 2018 03:13:46
Problema Factorial Scor 10
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.52 kb
#include <fstream>

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

int p;

int fact(int n)
{ int i,val=0;
  for(i=5; n/i>=1; i*=5)
      val+=n/i;
  return val;
}

int main()
{ fin>>p;
  if(p==0) {fout<<1; return 0;}
  else if(p==1) {fout<<5; return 0;}
  long long s=0,d=5*p;
  int pp=0;
  long long m=-1;
  while(s<d && pp==0)
        { m=(s+d)/2;
          if(fact(m)==p) {d=m; pp=1;}
          else s=m+1;
        }
if(m!=-1) m/5*5;
    fout<<m/5*5;
    return 0;
}