代码如下:
#include<bits/stdc++.h>
using namespace std;
const int M=111300005;
int P[10000006],c=0;
bool iP[M];
void GP(int n){
memset(iP,1,sizeof(iP));
iP[1]=0;
for(int i=2;i<=n;i++){
if(iP[i])
P[c++]=i;
for(int j=1;j<=c&&i*P[j]<=n;j++){
iP[i*P[j]]=0;
if(i%P[j]==0)
break;
}
}
}
int main(){
int n,m;
cin>>n>>m;
GP(n);
while(m--){
int k;
cin>>k;
cout<<P[k]<<endl;
}
return 0;
}