U302185 GSEP 4级样题 绝对素数
GSEP 4级样题 绝对素数
题目描述
如果一个两位数是素数,且它的数字位置经过对换后仍为素数,则称为绝对素数,例如 13。给定两个正整数 A、B,请求出大于等于 A、小于等于 B 的所有绝对素数。
输入格式
输入 1 行,包含两个正整数 A 和 B。保证 10<A<B<100。
输出格式
若干行,每行一个绝对素数,从小到大输出。
样例 #1
样例输入 #1
11 20
样例输出 #1
11
13
17
#include <iostream>
#include <cmath>
using namespace std;
bool IsPrime(int n) {
bool r = n >= 2;
if (r) {
for (int i = 2; i * i <= n; i++) {
if (n % i == 0) {
r = false;
break;
}
}
}
return r;
}
int main() {
int a, b; cin >> a >> b;
for (int i = a; i <= b; i++) {
if (IsPrime(i) && IsPrime((i % 10) * 10 + i / 10)) cout << i << endl;
}
}

浙公网安备 33010602011771号