Cod sursa(job #2797254)

Utilizator sims_glAlexandru Simion sims_gl Data 9 noiembrie 2021 17:13:55
Problema GFact Scor 5
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.66 kb
#include<iostream>
#include<fstream>
#include<climits>
using namespace std;
int i,p,q,rez=INT_MAX;
int calc(int n, int p)
{
    int j=p, sum=0;
    while(n>=j)
    {
        sum+=n/j;
        j=j*p;
    }
    return sum;
}
int main()
{
    freopen("gfact.in","r",stdin);
    freopen("gfact.out","w",stdout);
    cin>>p>>q;
    int st=0;
    int dr=16000;
    int mij=(st+dr)/2;
    while(st<dr)
    {
        mij=(st+dr)/2;
        if(calc(mij, p)>=q)
        {
            if(calc(mij, p)==q)
            {
                rez=min(rez, mij);
            }
            dr=mij-1;
        }
        else st=mij+1;
    }
    cout<<rez;

}