Pagini recente » Statistici Sincai Eva Ecaterina (EvaEcaterina) | Cod sursa (job #1796164) | Cod sursa (job #423835) | Cod sursa (job #2867840) | Cod sursa (job #1118969)
#include <fstream>
using namespace std;
ifstream f("gfact.in");
ofstream g("gfact.out");
long long put, st, dr, mij, p, q, v, Max, cop, nr, i, sol, ok;
int main()
{
f>>p>>q;
if (p==1)
{
g<<1;
return 0;
}
for (i=2; 1LL*i*i<=p; i++)
{
put=0;
ok=0;
while (p%i==0)
{
ok=1;
put++;
p/=i;
}
st=1;
dr=2000000001;
if (ok==1)
while(st<=dr)
{
nr=0;
mij=(st+dr)/2;
for (cop=i; cop<=mij; cop=1LL*cop*i)
nr+=mij/cop;
if (nr<1LL*put*q)
st=mij+1;
else
{
sol=mij;
dr=mij-1;
}
}
if (Max < sol)
Max = sol;
}
if(p!=1)
{
st=1;
dr=2000000001;
while(st<=dr)
{
nr=0;
mij=(st+dr)/2;
for (cop=p; cop<=mij; cop=1LL*cop*p)
nr+=mij/cop;
if (nr<q)
st=mij+1;
else
{
sol=mij;
dr=mij-1;
}
}
if (Max < sol)
Max = sol;
}
g<<Max;
return 0;
}