Pagini recente » Cod sursa (job #1451814) | Cod sursa (job #1526319) | Cod sursa (job #1740197) | Cod sursa (job #2421049) | Cod sursa (job #2287784)
#include <fstream>
using namespace std;
ifstream in("gfact.in");
ofstream out("gfact.out");
int p,q,st,dr,last=0;
int main()
{
in>>p>>q;
st=1;
dr=1000000000;
int mij,x;
while(st<dr)
{
mij=(st+dr)/2;
x=mij;
int s=0,mp=p;
while(x/mp>0)
{
s=s+x/mp;
mp=mp*p;
}
if(s==q)
{
last=mij;
break;
}
else if(s>q)
{
last=mij;
dr=mij-1;
}
else
{
st=mij+1;
}
}
out<<last-q/2;
return 0;
}