大佬们帮孩子看一下70pts的TLE程序啊!QAQ 悬赏关注一个!
查看原帖
大佬们帮孩子看一下70pts的TLE程序啊!QAQ 悬赏关注一个!
748507
ENJOY_CODING_TAN楼主2024/7/6 21:29

代码如下,谢谢大佬!

#include<bits/stdc++.h>
using namespace std;
bool judge[10000010];
bool judge1(int n){
	int m=n;
	while(n>0){
		if(n%10==7){
			judge[m]=1;
			return 1;
		}
		n/=10;
	}
	return 0;
}
bool judge2(int n){
	for(int i=1;i*i<=n;i++){
		if(n%i==0){
			if(judge1(i)){
				return 1;
				judge[n]=judge[i]=1;
			}
			if(judge1(n/i)){
				return 1;
				judge[n]=judge[n/i]=1;
			}
		}
	}
	return 0;
}
int main(){
	ios::sync_with_stdio(false);
	cin.tie(0),cout.tie(0);
	int t;
	cin>>t;
	while(t--){
		int x;
		cin>>x;
		if(judge[x]==true){
			cout<<-1<<'\n';
			continue;
		}
		if(judge2(x)){
			cout<<-1<<'\n';
			continue;
		}
		for(;;x++){
			if(judge[x+1])continue;
			if(judge2(x+1))continue;
			break;
		}
		cout<<x+1<<'\n';
	}
	return 0;
}
2024/7/6 21:29
加载中...