求助,全WA
查看原帖
求助,全WA
305296
云雷心柠檬听楼主2022/8/9 19:13
#include<bits/stdc++.h>
using namespace std;
const int N=1000009;
const int M=100000009;
bool ok[M];
int n,q,pr[N],nP=0;

int main(){
	scanf("%d%d",&n,&q);
	for(int i=2;i<=n;i++){
		if(ok[i]==0){
			pr[++nP]=i;
		}
		if(nP==1000001) break;
		for(int j=1;j<=nP&&pr[j]*i<=n;j++){
			ok[pr[j]*i]=1;
			if(i%pr[j]==0) break;
		}
	} 
	for(int i=1;i<=q;i++){
		int x;
		scanf("%d",&x);
		cout<<x<<endl;
		printf("%d\n",pr[x]);
	}
	return 0;
}

答案确实错了,但是不知道怎么改,看起来没啥问题

2022/8/9 19:13
加载中...