Pagini recente » Cod sursa (job #2728542) | Cod sursa (job #2466327) | Cod sursa (job #2376268) | Cod sursa (job #220235) | Cod sursa (job #1172463)
#include <cstdio>
#define Nmax 1000055
using namespace std;
int t,Q[Nmax],v[Nmax],dp[Nmax][8];
inline void ciur(){
int i,j;
for(i=2;i<=Nmax;i++)
if(!v[i])
for(j=i;j<=Nmax;j+=i){
v[j]=1;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;
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;
}