Cod sursa(job #2795331)

Utilizator octavi26octavian octavi26 Data 6 noiembrie 2021 11:25:10
Problema GFact Scor 5
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.7 kb
#include <bits/stdc++.h>
#define N 2008

using namespace std;

ifstream fin("gfact.in");
ofstream fout("gfact.out");

int p, q;

void Citire()
{
    fin >> p >> q;
}

int howMany( int b )
{
    int sol = 0;
    int k = p;
    while( k <= b )
    {
        sol += b / k;
        k *= p;
    }
    return sol;
}

void Rezolvare()
{
    int st, dr;
    int mid;
    int sol = 0;
    st = 0;
    dr = p * q;
    while( st <= dr )
    {
        mid = ( st + dr ) / 2;
        if( howMany(mid) < q )
            st = mid + 1;
        else
            sol = mid,
            dr = mid - 1;
    }
    fout << sol;
}

int main()
{
    Citire();
    Rezolvare();
    return 0;
}