Pagini recente » Cod sursa (job #1419831) | Cod sursa (job #122814) | Cod sursa (job #1874388) | Cod sursa (job #2724049) | Cod sursa (job #2681985)
#include <bits/stdc++.h>
#define mod 1000000007
using namespace std;
ifstream f("ga.in");
ofstream g("ga.out");
const int nmax=105;
int p,q,k,a[nmax],v[nmax];
long long sol;
int main()
{
f>>p>>q;
if(p%2==0)a[++k]=2;
while(p%2==0)
{
v[k]++;
p/=2;
}
for(int i=3; i*i<=p; i+=2)
{
if(p%i!=0)continue;
a[++k]=i;
while(p%i==0)
{
v[k]++;
p/=i;
}
}
if(p>2)
{
a[++k]=p;
v[k]=1;
}
for(int i=1; i<=k; i++)
{
v[i]=v[i]*q;
}
for(int i=1; i<=k; i++)
{
long long x=0;
while(v[i]>0)
{
x+=a[i];
long long y=x;
while(y%a[i]==0)
{
v[i]--;
y/=a[i];
}
}
sol=max(sol,x);
}
g<<sol<<'\n';
return 0;
}