Cod sursa(job #3280944)

Utilizator robert.barbu27robert barbu robert.barbu27 Data 27 februarie 2025 21:04:05
Problema Factorial Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.71 kb
#include <fstream>

using namespace std;
ifstream cin("fact.in");
ofstream cout("fact.out");
int nrzero(int x)
{
    int nrZeros = 0;
    int prod = 5;
    while (x >= prod)
    {
        nrZeros += x / prod;
        prod = prod * 5;
    }
    return nrZeros;
}
int P;
int main()
{
    cin >> P;
    int st = 1, dr = 5e8,raspuns = -1;
    while(st <= dr){
        int mijloc = (st+dr)/2;
        if(nrzero(mijloc) == P){
            raspuns = mijloc;
            dr = mijloc - 1;
        }
        else{
            if(nrzero(mijloc) < P){
                st = mijloc + 1;
            }
            else{
                dr = mijloc - 1;
            }
        }

    }
    cout<<raspuns;
}