基础题1亿内回文素数(洛谷)——一般

该博客记录了如何解决洛谷上的一道题目,寻找[5, 100,000,000]范围内所有的回文质数。通过筛法和优化策略(如排除偶数和偶数位数的回文数)来减少计算时间。博主提供了解题思路和代码实现,并指出1千万以后没有符合条件的回文素数。" 133482977,19671187,编程技巧:删除字符串中的特定内容,"['前端开发', '编程']
摘要由CSDN通过智能技术生成

题目https://www.luogu.org/problemnew/show/P1217

注.本文主要作为自己的学习笔记。

题目描述

因为151既是一个质数又是一个回文数(从左到右和从右到左是看一样的),所以 151 是回文质数。
写一个程序来找出范围[a,b](5 <= a < b <= 100,000,000)( 一亿)间的所有回文质数;

输入格式:
第 1 行: 二个整数 a 和 b .

输出格式:
输出一个回文质数的列表,一行一个。

输入样例1

5 500

输出样例1

5
7
11
101
131
151
181
191
313
353
373
383

输入样例2

123456 1123456

输出样例2

1003001
1008001
1022201
1028201
1035301
1043401
1055501
1062601
1065601
1074701
1082801
1085801
1092901
1093901
1114111
1117111
1120211
1123211

题目类型: 一般、筛法、素数、回文数

解题思路:
1亿的数据量很大,容易超时,但是注意几个点将节省很多时间。
1 . 首先所有偶数肯定不是素数,想到这一点就有了一个思想可以省去更多(不止一半的时间)。
2 . 然后经过我们的证明可以得知11是唯一一个偶数位数的回文数,这又能砍去大片数据。
3 . 1千万以后没有符合要求的数。

<
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值