过不了样例求助
查看原帖
过不了样例求助
510360
HbugU楼主2022/5/24 13:18
#include<bits/stdc++.h>
using namespace std;
int n,mark[500005];
void gprime(){
	mark[0]=1;mark[1]=1;
	for(int i=2;i<=n;i++){
		if(mark[i]==0){
			for(int j=2;i*j<=n;j++){
				mark[i*j]=1;
			}
		}
	}
}
int main(){
	int t;
	gprime();
	cin>>t;
	while(t--){
		cin>>n;
		if(n==1){
			cout<<1<<"\n";
			continue;
		}
		for(int i=n;i>=2;i--){
			if(!mark[i]){
				cout<<i<<"\n";
				break;
			}
		}
	}
	return 0;
}
2022/5/24 13:18
加载中...