#include <iostream>
#include <cstdio>
#include <cmath>
#include <cstring>
using namespace std;
#define M 5000005
int prime[M];
bool is[M];
void creatprime()
{
memset(is,0,sizeof(is));
int k=0;
prime[0]=2;
for(int i=4;i<M;i+=2)
is[i]=1;
for(int i=3;i<M;i+=2)
{
if(!is[i])
{
prime[k++] = i;
for(int j=i+i;j<M;j+=i)
is[j]=1;
}
}
}
int main()
{
creatprime();
int n;
while(scanf("%d",&n)!=EOF)
{
int a,b,i,j;
for(i=0;i<n;i++)
{
scanf("%d%d",&a,&b);
for( j=a+1;b>0;j++)
if(!is[j])b--;
printf("%d\n",j-1);
}
}
return 0;
}
湖南工大2012年校赛第八题1007
最新推荐文章于 2024-04-22 13:33:11 发布