Cod sursa(job #3204458)

Utilizator andreiciocanCiocan Andrei andreiciocan Data 16 februarie 2024 19:09:42
Problema Factorial Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.6 kb
#include <fstream>

using namespace std;
ifstream fin("fact.in");
ofstream fout("fact.out");
int main()
{
    long long p,n=-1;
    fin>>p;
    long long dt=p*5;
    long long st=1;
    while(st<=dt)
    {
        int m=(st+dt)/2;
        long long c=0;
        for(long long i=5;i<=m;i*=5)
        {
            c=c+m/i;
        }
        if(c==p)
        {
            n=m-m%5;
            st=dt+1;
        }
        if(c<p)
        {
            st=m+1;
        }
        else
        {
            dt=m-1;
        }
    }
    if(p==0)
        n=1;
    fout<<n;
    return 0;
}