Cod sursa(job #3260317)

Utilizator Octavian09Dore Octaviam Octavian09 Data 1 decembrie 2024 16:47:09
Problema Factorial Scor 5
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.66 kb
#include <iostream>
#include <fstream>

using namespace std;

ifstream f("fact.in");
ofstream g("fact.out");

long long P;

long long putere(int n) {
    long long s=0,p=5;
    while(p <= n) {
        s += n / p, p *= 5;
    }
    return s;
}

long long cb(long long p, long long u) {
    long long m,poz=-1;
    int pt;
    while(p <=u) {
        m=(p+u)/2;
        pt = putere(m);
        if(pt < P) {
            p=m+1;
        } else if(P >= pt){
            u=m-1;
            poz=m;
        }
    }
    return poz;
}


int main() {
    f >> P;
    if(P!=0 || (P-5)%6!=0)
        g << cb(0,P*5);
    else g << -1;

    return 0;
}