全部RE,求调QAQ
查看原帖
全部RE,求调QAQ
1433464
Dr_yhx楼主2024/11/27 13:29
#include <bits/stdc++.h>

using namespace std;

const int MAXN = 1e7 + 10; 

int inp[MAXN],pr[MAXN],check[MAXN];
int t=0;
int chc(int i){
	while(i){
		if(i%10==7){
			return 1;
		}else{
			i=i/10;
		}
	}
	return 0;
}
int init(){
	for(int i=1;i<=MAXN;i++){
		if(check[i]==0){
			if(chc(i)){
				for(int j=1;i*j<MAXN;j++){
					pr[i*j]=-1;
					check[i*j]=1;
			}
	}
		}
	}

}
int main(){
	init();
	cin>>t;
	for(int i=0;i<t;i++){
		cin>>inp[i];
		if(pr[inp[i]]==-1){
			inp[i]=-1;	
		}else{
			for(int k=inp[i]+1;k<=MAXN;k++){
				if(pr[k]!=-1){
					inp[i]=k;
					break;
				}else{inp[i]=-1;}
			}
		}
	};
	for(int i=0;i<t;i++){
		cout<<inp[i]<<endl;
	}
	return 0;
}
2024/11/27 13:29
加载中...