Cod sursa(job #780053)

Utilizator slyfer12Damian Alexandru slyfer12 Data 19 august 2012 19:22:26
Problema Factorial Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.55 kb
#include <fstream>
#include <math.h>
using namespace std;

int numZero(int x){
  int k=0,q=1;
    while(x/pow(5,q)){
       k+=x/pow(5,q);
       q++;
    }
   return k;
}
int main()
{long p,lt=1,rt,m;
   ifstream f("fact.in");
   ofstream g("fact.out");
   f>>p;
   rt=5*p;
   f.close();
     while(lt<=rt){
         m=(lt+rt)/2;
       if(p<=numZero(m))
         rt=m-1;
         else
         lt=m+1;
     }
     if(!p)
     g<<1;
     else{if(p==numZero(lt))
     g<<lt;
     else
     g<<-1;}
     g.close();
    return 0;
}