Cod sursa(job #2302649)

Utilizator razvan1403razvan razvan1403 Data 14 decembrie 2018 22:36:24
Problema Factorial Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.78 kb
#include<fstream>
using namespace std;
ifstream fin("fact.in");
ofstream fout("fact.out");
int nr_zero(long long n){
    long long  numara_zerouri=0;
    long long numitor=5;
    while(n>=5){
        numara_zerouri=numara_zerouri+n/numitor;
        numitor=numitor*5;
    }
    return numara_zerouri;
}
int main(){
    int P;
    long long st=1,dr=2000000000,med,sol,lm;
    fin>>P;
    bool ok=1;
    while(st<=dr){
        med=(st+dr)/2;
        lm=nr_zero(med);
        if(lm==P){
            sol=med;
            dr=med-1;
            ok=0;
        }
        else{
            if(lm>P)
                dr=med-1;
            else st=med+1;
        }
    }
    if(ok==1)
        fout<<"-1";
    else fout<<sol;
    fin.close();
    fout.close();
    return 0;
}