5个点re求助!
查看原帖
5个点re求助!
483843
hwipa楼主2022/1/25 22:42
#include<iostream>
#include<cstdio>
using namespace std;
long long n,q,ask[1000001],prime[50000001],cnt;
bool book[100000001];
int main()
{
	scanf("%d%d",&n,&q);
	for(long long i=1;i<=q;i++){
		scanf("%d",&ask[i]);
	}
	for(long long i=1;i<=n;i++){
		if(!book[i]) prime[++cnt]=i;
		for(long long j=1;j<=cnt&&i*prime[j]<=n;j++){
			book[i*prime[j]]=1;
			if(i%prime[j]==0) break;
		}
	}
	for(long long i=1;i<=q;i++){
		printf("%d\n",prime[n-ask[i]+1]);
	}
	return 0;
}
2022/1/25 22:42
加载中...