今天才发现数据加强了
然后就发现我不会打了
第三个点2.01sTLE
#include<cstdio>
int su[100000010],zhi[5850010],num,fan,times,a,i;
int main(){
scanf("%d%d",&fan,×);
for(i=2;i<=fan;++i){
su[1]=1;
if(!su[i])
zhi[++num]=i;
for(int o=1;o<=num&&i*zhi[o]<=fan;++o){
su[i*zhi[o]]=1;
if(!(i%zhi[o]))
break;
}
}
for(i=0;i<times;++i){
scanf("%d",&a);
printf("%d\n",zhi[a]);
}
}