#include<bits/stdc++.h>
using namespace std;
const int maxn=10e8+10;
bool primes[maxn];
int st[maxn];
int pp=0;
int main(){
int n,m;
cin>>n>>m;
for(int i=2;i<=n;i++){
if(!primes[i])st[++pp]=i;
for(int j=1;st[j]*i<=n;j++){
primes[st[j]*i]=1;
if(i%st[j]==0)break;
}
}
for(int i=1;i<=m;i++){
int x;
cin>>x;
cout<<st[x]<<'\n';
}
return 0;
}
本地可行,洛谷CE,想问问是什么原因