Cod sursa(job #736482)

Utilizator OrionDicu Mihai George Orion Data 18 aprilie 2012 19:04:30
Problema Factorial Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.82 kb
#include<iostream> 
#include<fstream> 
#include<math.h> 
using namespace std; 
 
 
ifstream f("fact.in"); 
ofstream g("fact.out"); 
 
 
int zero (int n) 
{ 
    
int i=1, Nr=0; 
    
while(pow(5,i)<=n) 
    
{ 
                      
Nr=Nr+n/int(pow(5,i)); 
                      
i++; 
    
} 
    
return Nr; 
} 
 
 
int Cautare(int st, int dr, int p) 
{ 
     
 
    
int mij=(st+dr)/2; 
    
if (st==dr) return st; 
    
if(zero(mij)>=p) 
                       
return Cautare(st, mij, p); 
   
else 
                       
return Cautare(mij+1,dr,p); 
} 
 
 
 
 
int main() 
{ 
    
int P; 
   
f>>P; 
   
if (P==0) g<<1; 
   
else
  
{ 
    
if (zero(Cautare(4*P,5*P,P))==P) g<<Cautare(4*P,5*P,P); 
   
else g<<-1; 
   
} 
   
f.close(); 

g.close(); 
}