P1217 [USACO1.5] 回文质数 Prime Palindromes - 洛谷
#include<bits/stdc++.h>
using namespace std;
int a,b;
bool ss(int e){//判断是否为质数
if(e<=1)return false;
if(e==2)return true;
if(e%2==0)return false;
int m=sqrt(e);//不用每次都计算 sqrt(e)
for(int i=3;i<=m;i+=2){
if(e%i==0){
return false;
}
}
return true;
}
bool ff(int e){//判断是否为回文数
int num=0,rnum=e;
while(e>0){
num=num*10+e%10;
e/=10;
}//循环结束后得到e的回文数
return num==rnum;
}
int main(){
cin>>a>>b;
for(int i=a;i<=b;i++){
if(ss(i)&&ff(i)){
cout<<i<<endl;
}
}
return 0;
}