这道题输出超限,求解决办法
小王对既是素数又是回文的数特别感兴趣。比如说151既是素数又是个回文。现在小王想要你帮助他找出某个范围内的素数回文数,请你写个程序找出 a 跟b 之间满足条件的数。(5 <= a < b <= 100,000,000);#include <stdio.h>
#include <string.h>
#include <math.h>
int pand(long n)
{
long i,t;
t=(long)sqrt(n);
if(n<2)
return 0;
for(i=2;i<=t;i++)
if(n%i==0)
break;
if(i>t)
return 1;
else return 0;
};
int huiw(long n)
{
int i;
char a[100];
sprintf(a,"%d",i);
char *p,*q;
int c;
p=a;
c=strlen(a);
q=a+c-1;
for(;p<=q;)
{ if(*p==*q)
{p++;
q--;}
else break;
}
if (p>q)
return 1;
else return 0;
}
int main()
{
long a,b,i;
scanf("%ld %ld",&a,&b);
for(i=a;i<=b;i++)
{
if(pand(i)&&huiw(i))
printf("%ld\n",i);
}
}