RE求助,数组下标不溢出,数组空间也够
查看原帖
RE求助,数组下标不溢出,数组空间也够
575698
262620zzj楼主2023/4/16 10:11
#include<bits/stdc++.h>
using namespace std;
int n,q,k,cnt,prime[1000001];
bitset <100000001> a;
inline int read(){
	int s=0;
	char c=getchar();
	while(c>='0'&&c<='9'){
		s=(s<<3)+(s<<1)+c^48;
		c=getchar();
	}
	return s;
}
inline void write(int x){
	if(x>9)write(x/10);
	putchar(x%10+48);
}
int main(){
	n=read();
	q=read();
	for(int i=2;i<=n;i++){
		if(!a[i])prime[++cnt]=i;
		for(int j=1;prime[j]*i<=n&&j<=cnt;j++){
			a[prime[j]*i]=1;
			if(i%prime[j]==0)break;
		}
	}
	for(int i=0;i<q;i++){
		k=read();
		write(prime[k]);
		printf("\n");
	}
	return 0;
}
2023/4/16 10:11
加载中...