LRRabcd @ 2024-07-28 13:30:21
#include<iostream>
using namespace std;
bool vis[100000005];
int pre[1000005];
int main(){
int n,q;
cin>>n>>q;
vis[1]=1;
for(int i=2;i*i<=n;i++){
if(vis[i]==0){
for(int j=i*i;j<=n;j+=i){
vis[j]=1;
}
}
}
int cnt=0;
for(int i=2;i<=n;i++){
if(vis[i]==0){
pre[++cnt]=i;
}
}
while(q--){
int x;
cin>>x;
cout<<pre[x]<<endl;
}
return 0;
}
埃氏筛+不开long long
+不关闭同步流,也可以过。
AC
by BGM114514 @ 2024-07-28 13:48:35
@20121028LRR 有亿点慢是不是
by LRRabcd @ 2024-07-28 20:03:21
嗯,最慢的
by LRRabcd @ 2024-07-29 00:00:34
不对是