Cod sursa(job #1618948)

Utilizator bullracerGabriel bullracer Data 28 februarie 2016 10:09:20
Problema Factorial Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.63 kb
#include <fstream>

using namespace std;

ifstream cin("fact.in");
ofstream cout("fact.out");

int k;

int nrzero(int x){
    int w = 5, Ans = 0;
    while(w <= x){
        Ans += x / w;
        w *= 5;
    }
    return Ans;
}

int binary(int st, int dr){
    int last = -1;
    while(st <= dr){
        int med = (st + dr) >> 1;
        if(nrzero(med) >= k){
            last = med;
            dr = med - 1;
        }
        else
            st = med + 1;
    }
    if(nrzero(last) == k)
        return last;
    return -1;
}

int main(){
    cin >> k;
    cout << binary(1, (1 << 29));
    return 0;
}