Cod sursa(job #1046307)

Utilizator buzu.tudor67Tudor Buzu buzu.tudor67 Data 2 decembrie 2013 20:24:59
Problema Factorial Scor 20
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.73 kb
#include<fstream>
using namespace std;
ifstream fi("fact.in");
ofstream fo("fact.out");

long long st,dr,mid;
int p;

bool posibil(long long n){
     long long k=0,q=1;
     
     while(q<=n) {
                  q*=5;
                  k+=(n/q);
                 }
     
     if (k==p) return true;
     else return false;
}

int main(){
    fi>>p;
    if(p==0) fo<<1;
    else {
          st=1; dr=6*p;
          while(st!=dr){
                        mid=(st+dr)/2;
                        if (posibil(mid)) dr=mid;
                        else st=mid+1;
                       }
    
         if (posibil(st)) fo<<st;
         else fo<<-1;
         }
    
    fi.close();
    fo.close();
    return 0;
}