#include <iostream>
#include <cstring>
#include <math.h>
using namespace std;
int dig=0;
bool isp(int i)
{
int s=sqrt(double(i));
for(int j=2;j<=s;j++)
{
if(i%j==0) return false;
}
return true;
}
void digit(int i)
{
dig=0;
int temp =i;
do
{
dig++;
//int t_sdig=dig;
temp/=10;
}while(temp!=0);
}
bool ispr(int n)
{
int tem=n;
char c[dig]={0};
for(int i=0;i<dig;i++)
{
c[i]=tem%10;
//int c_temp=c[i];
tem/=10;
}
int x=0,y=dig-1;
do
{
if(c[x]==c[y])
{
x++;
if(x==y)
return false;
y--;
}
else
return false;
}while(x!=y||x<y);
return true;
}
int main()
{
int a,b;
cin>>a>>b;
for(int i=a;i<=b;i++)
{
if(i%2==0||i%3==0)
continue;
if(isp(i))//жЪЪ§ЮЊец
{
// int t_dig=dig;
digit(i);// 判断位数
if(dig==1)
cout<<i<<endl;
else if(dig==2)
{
if(i%10==i/10%10)
cout<<i<<endl;
}
else if(dig>=3)
{
if(ispr(i))
cout<<i<<endl;
}
}
}
return 0;
}
麻烦问问各位大佬,这里为何T了啊