88分,最后一点超时了QAQ
查看原帖
88分,最后一点超时了QAQ
1007387
zyx20090708楼主2023/8/3 15:43
#include<bits/stdc++.h>
using namespace std;
bool v[100000001];
void get_prime(int n){
	memset(v,true,sizeof(v));
	v[1] = false;
	int b = sqrt(n);
	for(int i=2;i<=b;i++){
		if(v[i]){
			for(int j=2;j<=n/i;j++) v[i*j] = false;
		}
	}
}
bool is_huiwen(int m){
	int t=m,ans = 0;
	while(t!=0){
		ans +=t%10;
		ans*=10;
		t/=10;
	}
	return m*10 == ans;
}
int main(){
	int a,b;
	cin>>a>>b;
	if(a>=100000000)a=9999999;
	get_prime(b);
	if(a>b) return 0;
	if(a%2==0) a++;
	for(int j=a;j<=b;j+=2){
		if(v[j]&&is_huiwen(j)) cout<<j<<endl;
	}
	return 0;
}
2023/8/3 15:43
加载中...