Cod sursa(job #2791537)

Utilizator dotyzebra775Papuc Stefan dotyzebra775 Data 30 octombrie 2021 17:44:22
Problema Factorial Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.65 kb
#include <fstream>

using namespace std;
ifstream fin("fact.in");
ofstream fout("fact.out");

int p;

int ct0(int n)
{
    int d = 5, ct = 0;
    while(d <= n)
    {
        ct += n / d;
        d *= 5;
    }
    return ct;
}

int main()
{
    int st, dr, mij;
    int sol = -1;
    fin >> p;
    st = 1; dr = 1000000005;
    while(st <= dr)
    {
        mij = (st + dr) / 2;
        int nr = ct0(mij);
        if(nr == p)
        {
            sol = mij;
            dr = mij - 1;
        }
        else if(nr > p)
            dr = mij - 1;
        else
            st = mij + 1;
    }
    fout << sol;
    return 0;
}