题目描述
如果一个两位数是素数,且它的数字位置经过对换后仍为素数,则称为绝对素数,例如 13。给定两个正整数 A,B,请求出大于等于 A、小于等于 B 的所有绝对素数。
输入格式
输入 1 行,包含两个正整数 A 和 B。保证 10<A<B<100。
输出格式
若干行,每行一个绝对素数,从小到大输出。
输入输出样例
输入 #1
11 20
输出 #1
11
13
17
AC代码
#include<bits/stdc++.h>
using namespace std;
int a,b;
bool is(int s){
for(int i=2;i<s;i++){
if(s%i==0) return 0;
}
int p=0;
while(s!=0){
p*=10;
p+=s%10;
s/=10;
}
for(int i=2;i<p;i++){
if(p%i==0) return 0;
}
return 1;
}
int main(){
cin>>a>>b;
for(int i=a;i<=b;i++){
if(is(i)==1) cout<<i<<endl;
}
return 0;
}