Pagini recente » Cod sursa (job #785287) | Cod sursa (job #1115791) | Cod sursa (job #2399942) | Cod sursa (job #1080107) | Cod sursa (job #2797254)
#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;
}