A1592. 回文素数
编程题
入门
知识点
题目描述
所谓回文数,就是正着读和反着读一样的数,例如,$12321$ 和 $5665$ 都是正着读和反着读一样的数,所以是回文数;而 $1234$ 反着读是 $4321$,和正着读不一样,所以不是回文数。
素数,也叫质数。一个大于 $1$ 的自然数,除了 $1$ 和它自身外,不能被其他自然数整除的数叫做质数;否则称为合数(规定 $1$ 既不是质数也不是合数)。
输入一个正整数 $n$,如果 $n$ 是回文素数(既是回文数又是素数),则输出 $Yes$,否则输出 $No$。
补全以下代码完成该程序:
```
#include <iostream>
#include <cmath>
using namespace std;
// 实现 is_pal 函数,如果 n 是回文数,则返回 true,否则返回 false
bool is_pal(int n) {
}
// 实现 is_prime 函数,如果 n 是素数,则返回 true,否则返回 false
bool is_prime(int n) {
}
int main() {
int n;
cin >> n;
// 如果 is_pal(n) 返回 true,并且 is_prime(n) 返回 true,则说明 n 是回文素数
if(is_pal(n) && is_prime(n)) {
cout << "Yes";
}else { // 否则,n 不是回文素数
cout << "No";
}
return 0;
}
```
素数,也叫质数。一个大于 $1$ 的自然数,除了 $1$ 和它自身外,不能被其他自然数整除的数叫做质数;否则称为合数(规定 $1$ 既不是质数也不是合数)。
输入一个正整数 $n$,如果 $n$ 是回文素数(既是回文数又是素数),则输出 $Yes$,否则输出 $No$。
补全以下代码完成该程序:
```
#include <iostream>
#include <cmath>
using namespace std;
// 实现 is_pal 函数,如果 n 是回文数,则返回 true,否则返回 false
bool is_pal(int n) {
}
// 实现 is_prime 函数,如果 n 是素数,则返回 true,否则返回 false
bool is_prime(int n) {
}
int main() {
int n;
cin >> n;
// 如果 is_pal(n) 返回 true,并且 is_prime(n) 返回 true,则说明 n 是回文素数
if(is_pal(n) && is_prime(n)) {
cout << "Yes";
}else { // 否则,n 不是回文素数
cout << "No";
}
return 0;
}
```
输入格式
输入一个正整数 $n$($0 < n < 10000$)。
输出格式
如果 $n$ 是回文素数,则输出 $Yes$,否则输出 $No$。
输入输出样例
输入 #1
11
输出 #1
Yes