#include <bits/stdc++.h>
using namespace std;
int check1[100000005] = {0}, check2[50000005] = {0}; // 0´ú±íÊÇÖÊÊý£¬1´ú±í ²»ÊÇÖÊÊý£¬ÀÁµÃдһÐдúÂëµ÷»»¹ýÀ´ÁË¡£¡£¡£
bool is_palindrome(int x) {
string s = to_string(x);
int check = s.length() - 1;
for (int i = 0; check >= i; i++) {
if (s[i] == s[check]) {
check--;
}
else {
return 0;
}
}
return 1;
}
int main() {
int a, b, cnt = 0;
cin >> a >> b;
if (b >= 100000000) b = 100000000;
for (int i = 2; i <= b; i++) {
if (2 * i > b) break;
if (check1[i] == 0) check2[cnt++] = i;
for (int j = 0; check2[j] != 0; j++) {
if (i * check2[j] > b) { break; }
check1[i * check2[j]] = 1;
if (!(i % check2[j])) {
break;
}
}
}
for (int i = a; i <= b; i++) {
if (!check1[i] && is_palindrome(i)) {
cout << i << "\n";
}
}
return 0;
}
是1e8的数组不可以定义为全局数组吗,也用了欧拉筛了,是miss了什么小细节吗,望各位指点一二