题目
#include <iostream>
using namespace std;
bool nprime[100000];
void sieve(){
nprime[0]=nprime[1]=1;
for(int i=2;i<=316;++i)
if(!nprime[i])
for (int j=i*i;j<100000;j+=i)nprime[j]=1;
}
//以上是筛法求素数,不是素数返回1,是素数返回0--------------------------------
bool isSym(int n){
int temp1,temp2=0;
temp1=n;
while(n){
temp2*=10;
temp2+=n%10;
n/=10;
}
if(temp1==temp2)return true;
else return false;
}
//以上是判断对称-----------------------------------------------------------
int main(){
sieve();
//调用筛法求素数的函数
int a[1000]={};
//记得给数组初始化。上面那个nprime数组不需要初始化是因为定义的是全局变量,默认初始值为0。
int cnt=0;
for(int i=2;i<100000;++i)
if(!npr