过样例,但TLE
题目描述
因为151既是一个质数又是一个回文数(从左到右和从右到左是看一样的),所以 151 是回文质数。
写一个程序来找出范围[a,b](5 <= a < b <= 100,000,000)间的所有回文质数;
输入格式
二个整数 a 和 b
输出格式
输出一个回文质数的列表,一行一个
样例
样例输入
5 500
样例输出
5
7
11
101
131
151
181
191
313
353
373
383
数据范围与提示
提示:找出所有的回文数再判断它们是不是质数(素数)
代码
```c++
#include <bits/stdc++.h>
using namespace std;
int main() {
ios::sync_with_stdio(false);
int Min, Max, Length;
char HUIC[105];
string HUI;
cin >> Min >> Max;
for (int i = Min; i <= Max; i++) {
if (i >= 1000 & i <= 9999) {
i = 10000;
goto End;
}
if (i >= 100000 & i <= 999999) {
i = 1000000;
goto End;
}
sprintf(HUIC, "%d", i);
HUI = HUIC;
Length = HUI.length();
for (int j = 0; j < Length; j++) {
if (HUIC[j] != HUIC[Length - j - 1])
goto End;
}
if (i % 2 == 0) goto End;
for (int j = 3; j * j <= i; j += 2) {
if (i % j == 0)
goto End;
}
cout << i << "\n";
End:;
}
return 0;
}
运行结果及报错内容
与样例相同