Pagini recente » Cod sursa (job #1458057) | Cod sursa (job #375296) | Cod sursa (job #2224479) | Cod sursa (job #3205392) | Cod sursa (job #1172465)
#include <cstdio>
#define Nmax 1000055
using namespace std;
int Q[Nmax],dp[Nmax][8];
inline void ciur(){
int i,j;
for(i=2;i<=Nmax;i++)
if(!Q[i])
for(j=i;j<=Nmax;j+=i)
Q[j]++;
}
inline void solve(){
int i,j;
for(i=1;i<Nmax;i++)
for(j=1;j<=7;j++){
if(Q[i] == j)
dp[i][j] = i;
else dp[i][j]=dp[i-1][j];
}
}
int main(){
int i,n,k,j,t;
freopen("divprim.in","r",stdin);
freopen("divprim.out","w",stdout);
scanf("%d",&t);
ciur();
solve();
for(i=1;i<=t;i++){
scanf("%d%d",&n,&k);
printf("%d\n",dp[n][k]);
}
return 0;
}