Cod sursa(job #2690390)

Utilizator andrei_marciucMarciuc Andrei andrei_marciuc Data 23 decembrie 2020 20:46:09
Problema Factorial Scor 90
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.62 kb
#include <fstream>
using namespace std;
ifstream cin( "fact.in" );
ofstream cout( "fact.out" );

long long caut( int div, int exp ){
    if( exp == 0 )
        return 1;
    long long st = 0, mij, sol;
    long long dr = ( long long )exp * div;
    while( dr - st > 1 ) {
        mij = ( st + dr ) >> 1;
        sol = div;
        int f = 0;
        while( sol <= mij ){
            f += mij / sol;
            sol *= div;
        }
        if( f < exp )
            st = mij;
        else dr = mij;
    }
    return dr;
}

int main ()
{
    int p;
    cin >> p;
    cout << caut( 5, p );
    return 0;
}