题目描述 给定一个数字 n n,判断其是不是回文质数。 回文质数的定义就是该数字既是一个回文数,也是一个质数。回文数:形如 1221 1221, 12321 12321都是一个回文数。质数: 2 , 3 , 5 , 7 , 11 , 13 2,3,5,7,11,13等
也就是保证它是回文数的前提下,还得让它在是一个质数。
或者保证它是质数的前提下,再去保证它是一个回文数。
输入格式 一个整数n
输出格式 如果是回文质数,输出 Y e s Yes 否则输出 N o No 对于 100 % 100% 的数据, 0 < n ≤ 1 0 5 0<n≤10 5 。
#include <bits/stdc++.h>
using namespace std;
int main()
{
long long n;
cin>>n;
bool a[113];
int c[113]={2,3,5,7,11,101,131,151,181,191,313,353,383,727,757,787,797,919,929,10301,10501,10601,11311,11411,12421,12721,12821,13331,13831,13931,14341,14741,15451,15551,16061,16361,16561,16661,17471,17971,18181,18481,19391,19891,19991,30103,30203,30403,30703,30803,31013,31513,32323,32423,33533,34543,34843,35053,35153,35353,35753,36263,37273,37573,38083,38183,38783,39293,70207,70607,71317,71917,72227,72727,73037,73237,73637,74047,74747,75557,76367,76667,77377,77477,77977,78487,78887,79397,79697,79997,90709,91019,93139,93239,93739,94049,94349,94649,94849,94949,95959,96269,96469,96769,97379,97579,97879,98389,98689};
for(int i=0;i<113;i++)
{
a[i]=1;
}
for(int i=0;i<113;i++)
{
if(n!=c[i]){
a[i]=0;
}
}
for(int i=0;i<113;i++)
{
if(a[i]==1)
{
cout<<"Yes";
break;
}else if(i==n-1)
{
cout<<"No";
}
}
return 0;
}
救救我只有两不对---核桃L4 C1测试E题