#include <iostream>
#include <string>
#include <sstream>
using namespace std;
const int N = 100000001;
bool isNotPri[N] = { 1,1 };
int pri[N];
int tot = 0;
bool check(string& s)
{
for (size_t i = 0; i < s.size(); i++)
if (s[i] != s[s.size() - 1 - i])
return 0;
return 1;
}
int main()
{
int a, b;
cin >> a >> b;
for (int i = 2; i < N; i++)
{
if (!isNotPri[i])
{
pri[tot++] = i;
if (i >= a && i <= b)
{
string s;
stringstream ss;
ss << i;
s = ss.str();
if (check(s))
cout << i << endl;
}
}
for (int j = 0; j < tot && i * pri[j] < N; j++)
{
isNotPri[i * pri[j]] = 1;
if (!i % pri[j])
break;
}
}
}
在vs和Dev上都没问题,样例过了,提交就出现这个
g++: 编译器内部错误:文件大小超出限制 signal terminated program as
请提交一份完整的错误报告,
如有可能请附上经预处理后的源文件。
参阅 file:///usr/share/doc/gcc-8/README.Bugs 以获取指示。