Wyf32627 @ 2024-01-19 12:18:01
by Wyf32627 @ 2024-01-19 12:19:58
#include <bits/stdc++.h>
using namespace std;
int prime(int num)
{
for(int i=2;i<num;i++)
{
if(num%i==0)
{
return false;
}
}
return true;
}
int main()
{
int a,b;
cin>>a>>b;
for(int i=a;i<=b;i++)
{
int n=0,o=i;
while(o!=0)
{
n=n*10+o%10;
o/=10;
}
if(n==i)
{
if(prime(i))
{
cout<<i<<endl;
}
}
}
return 0;
}
by Wyf32627 @ 2024-01-19 12:20:15
这是代码
by Addicted_Game @ 2024-01-19 12:39:34
有一个地方要注意,大于9989899后数据范围内是没有回文质数的,这需要卡一下
by Wyf32627 @ 2024-01-20 08:35:11
@nyHZT 谢谢帮忙,在DEV CPP上是对的,但还是三个TLE
by Wyf32627 @ 2024-01-23 15:17:49
有人帮我解决吗???
by lizeyuhello @ 2024-01-23 19:30:48
@Frank_world 我也3TLE
by 0x00dream @ 2024-01-23 19:35:40
@Frank_world 我也是三个TLE,死活弄不对,不知道错在哪里,这洛谷为什么没有答案呢,差评,垃圾
by Wyf32627 @ 2024-01-24 09:38:16
6
by _Eileen_42 @ 2024-01-26 18:10:47
我6个,已经人晕了TuT
by _Eileen_42 @ 2024-01-26 18:12:58
@Frank_world 有一个不一定能解决但可以尝试的方法,判断prime的for循环,最后让i < num/2,甚至极端一点 < sqrt(n) 就行,这样可以少判断一些,时间也许会少用一点