因为 151151 既是一个质数又是一个回文数(从左到右和从右到左是看一样的),所以 151151 是回文质数。
写一个程序来找出范围 [a,b] ( a < b 100,000,000)a,b(一亿)间的所有回文质数
因为 151151 既是一个质数又是一个回文数(从左到右和从右到左是看一样的),所以 151151 是回文质数。
写一个程序来找出范围 [a,b] ( a < b 100,000,000)a,b(一亿)间的所有回文质数
#include <bits/stdc++.h>
using namespace std;
int a,b;
bool f[100000010];
int main() {
cin>>a>>b;
if(b >= 10000000) b = 10000000;
f[0] = true;
f[1] = true;
for(int i = 2;i <= sqrt(b);i++){
if(!f[i]){
for(int j = i+i;j<=b;j=j+i){
f[j] = true;
}
}
}
int t,r;
for(int i = a;i <= b;i++){
if(!f[i]){
t = i;
r = 0;
while(t != 0){
r = r * 10 + t % 10;
t = t / 10;
}
if(r == i) cout<<i<<endl;
}
}
return 0;
}