#include <bits/stdc++.h>
using namespace std;
bool is_ss(int j){
if(j==1){
return 0;
}
if(j==2){
return 1;
}
for(int i=2;i<=sqrt(j);i++){
if(j%i==0){
return 0;
}
}
return 1;
}
int f(int x){
int a[10],len=1,n;
while(x){
a[len++]=x%10;
x/=10;
}
for(int i=1;i<=len;i++){
n=n*10+a[i];
}
return n;
}
int main(){
int l,r,a[100000],len=1;
cin>>l>>r;
for(int i=l;i<=r;i++){
if(is_ss(i)&&!is_ss(f(i))){
a[len++]=i;
}
}
len--;
if(!len){
cout<<"No";
return 0;
}
for(int i=1;i<=len-1;i++){
cout<<a[i]<<",";
}
cout<<a[len];
return 0;
}
描述 找出正整数 M 和 N 之间(N 不小于 M)的所有真素数。 真素数的定义:如果一个正整数 P 为素数,且其反序也为素数,那么 P 就为真素数。
例如, 1 1 11, 1 3 13 均为真素数,因为 1 1 11 的反序还是为 1 1 11, 1 3 13 的反序为 3 1 31 也为素数。
输入描述 输入两个数 M 和 N,空格间隔,1≤M≤N≤100000。 输出描述 按从小到大输出 M 和 N 之间(包括 M 和 N)的真素数,逗号间隔。如果之间没有真素数,则输出 No。 输入输出样例 输入样例 1 10 35 输出样例 1 11,13,17,31