Cod sursa(job #2238362)

Utilizator al3xionescuIonescu Alexandru al3xionescu Data 5 septembrie 2018 13:01:30
Problema Factorial Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.62 kb
#include <bits/stdc++.h>
using namespace std;
long long p;
long long zero(long long x){
    long long c = 0;
    for(long long i = 5; x/i>0; i *= 5){
        c += x/i;
    }
    return c;
}
long long cb(long long x){
    long long st = 1, dr = 10000000010, mid;
    while(st<=dr){
        mid = (st + dr) / 2;
        if(zero(mid) < x){
            st = mid + 1;
        }
        else{
            dr = mid - 1;
        }
    }
    if(zero(st) == x){
        return st;
    }
    else{
        return 1;
    }
}
int main(){
    ifstream cin("fact.in");
    ofstream cout("fact.out");
    cin >> p;
    cout << cb(p);
    return 0;
}