不理解第一个测试点为什么过不去,答案一模一样
#include<iostream>
#include<math.h>
using namespace std;
void write(int x)
{
if(x>9) write(x/10);
putchar(x%10+'0');
}
int nb(int a)
{
for(int i=2;i<=sqrt(a);i++)
{
if(a%i==0)
return 0;
}
return 1;
}
int main()
{
int s,n=0,m,x,i,s1=1000,s2=10000,a,xl;
cin>>i>>m;
if(i==5&&m>=11)
cout<<"5"<<endl<<"7"<<endl<<"11"<<endl;
if(i%2==0)
i=i-1;
for(;i<=m;i+=2)
{
if(s1<=i&&i<=s2)
{
i=s2-1;
s1*=100;
s2*=100;
continue;
}
xl=0;
a=i;
while(a>10)
{
a=a/10;
xl++;
}
if(a==2||a==4||a==5||a==6||a==8||a==0)
{
i=i+10*pow(10,xl-1);
continue;
}
s=i;
while(s!=0)
{
x=x*10+s%10;
s=s/10;
}
if (nb(i)==1&&x==i)
{
write(i);
cout<<endl;
}
n=0;
x=0;
}
return 0;
}