一个素数,如果将其反转后仍然是一个素数,我们称这样的素数为反转素数。 例如13是一个素数,反转之后得到的31也是一个素数,那么13和31都是反转素数。

一个素数,如果将其反转后仍然是一个素数,我们称这样的素数为反转素数。

例如13是一个素数,反转之后得到的31也是一个素数,那么13和31都是反转素数。

一个素数,如果将其反转后仍然是一个素数,我们称这样的素数为反转素数。
例如13是一个素数,反转之后得到的31也是一个素数,那么13和31都是反转素数。
当然,一位数的素数也满足反转素数的性质。
现在输入两个正整数m和n,满足1<=m<n<=100000,求m和n之间的反转素数的个数。

输入
两个整数:m和n

输出
输出m和n之间的反转素数的个数

样例输入
1 13

样例输出
6

#include
#include<math.h>
using namespace std;
int ss(int n)//标记
{
int j;
if(n1)return 0;
else {for(j=2;j<=(int)sqrt(n);j++)
if(n%j
0)break;
if(j>(int)sqrt(n))return 1;
else return 0;
}
}
int main()
{
int m,n,count=0;
cin>>m>>n;
if(m%2==0)m++;
for(;m<=n;m++)
{
int y=0,x;
x=m;
while(x)y=y*10+x%10,x/=10;
if(ss(m)==ss(y)&&ss(m)==1)count++;
}
cout<<count<<endl;
return 0;
}

猜你喜欢

转载自blog.csdn.net/m0_52380556/article/details/114412274