B3750 题解
思路分析
直接模拟即可。
我们需要 当然如果你有强迫症也可以用质数筛),
代码演示
可以看注释理解。
#include <iostream>
bool isPrime(int x) { // 判断是否为质数
if (x < 2) return false;
for (int mod = 2; mod * mod <= x; ++mod)
if (!(x % mod)) return false;
return true;
}
bool check(int x) {
while (x) {
if (!isPrime(x)) return false;
x /= 10; // 按位分解,这部操作相当于去掉一个数的最后一位
}
return true;
}
int main() {
int m, n; std::cin >> m >> n;
for (int i = m; i <= n; ++i)
if (check(i)) std::cout << i << '\n';
return 0;
}