当前位置: 首页 > news >正文

题解:洛谷 P1217 [USACO1.5] 回文质数 Prime Palindromes

【题目来源】

洛谷:P1217 [USACO1.5] 回文质数 Prime Palindromes - 洛谷

【题目描述】

因为 $151 $ 既是一个质数又是一个回文数(从左到右和从右到左是看一样的),所以 \(151\) 是回文质数。

写一个程序来找出范围 \([a,b](5\le a\lt b\le 100,000,000)\)(一亿)间的所有回文质数。

【输入】

第一行输入两个正整数 \(a\)\(b\)

【输出】

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

【输入样例】

5 500

【输出样例】

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

【解题思路】

image

【算法标签】

《洛谷 P1217 回文质数》 #素数判断,质数,筛法# #USACO#

【代码详解】

#include <bits/stdc++.h>  // 包含标准库头文件(万能头文件)
using namespace std;      // 使用标准命名空间/*** 判断一个数是否是回文数* @param n 要判断的数字* @return 如果是回文数返回true,否则返回false*/
bool isPalindrome(int n) 
{int s = 0, k = n;    // s存储反转后的数字,k是n的临时副本while (k != 0) {s *= 10;         // 左移一位s += k % 10;     // 添加最后一位数字k /= 10;         // 移除最后一位数字}if (s == n)          // 比较反转后的数字和原数字return true;return false;
}/*** 判断一个数是否是质数* @param n 要判断的数字* @return 如果是质数返回true,否则返回false*/
bool isPrime(int n) 
{// 从3开始检查到√n,步长为2(跳过偶数)for (int i = 3; i <= sqrt(n); i = i + 2) {if (n % i == 0)  // 如果能被整除,不是质数return false;}return true;
}/*** 主函数 - 程序入口* @return 程序执行状态码(0表示成功)*/
int main()
{int a, b;            // 定义变量:查找范围[a,b]cin >> a >> b;       // 输入查找范围// 确保从奇数开始查找(偶数不可能是质数)if (a % 2 == 0) a++;// 优化:超过10000000的数字不可能是回文质数if (b > 10000000) b = 10000000;// 遍历范围内的奇数,查找回文质数for (int i = a; i <= b; i = i + 2) {// 如果是回文数且是质数if (isPalindrome(i) && isPrime(i)) {cout << i << endl;  // 输出该回文质数}}return 0;            // 程序正常结束
}

【运行结果】

5 500
5
7
11
101
131
151
181
191
313
353
373
383
http://www.jsqmd.com/news/387411/

相关文章:

  • 题解:洛谷 P5724 【深基4.习5】求极差 / 最大跨度值 / 最大值和最小值的差
  • 题解:洛谷 P5722 【深基4.例11】数列求和
  • 题解:洛谷 P5723 【深基4.例13】质数口袋
  • 企业iPaaS选型指南:如何打破数据孤岛实现高效集成
  • 用 ArcPy 批量拆分并投影 Shapefile:自动分组导出 + 合并输出
  • jar 包又冲突了?如何快速确定与哪个 jar 包冲突?
  • 因为 BitMap,白白搭进去 8 台服务器
  • 受聘为2026年度中国知网评审专家库专家
  • 三、Claude Opus 4.6 三体银河纪元 -1
  • 一文搞懂告别繁琐命令行:自研多线程 SSH 极速文件传输助手(附 GitHub 源码):核心原理+实战案例
  • 彻底干掉恶心的 SQL 注入漏洞,一网打尽!
  • 题解:洛谷 P2669 [NOIP 2015 普及组] 金币
  • 一个小小的签到功能,到底用 MySQL 还是 Redis?
  • 题解:洛谷 P1035 [NOIP 2002 普及组] 级数求和
  • 求求你,别在 MySQL 中使用 UTF-8了!
  • 吐血推荐!更贴合专科生的AI论文网站,千笔·专业学术智能体 VS 灵感ai
  • 面试官:什么是 NIO?NIO 的原理是什么机制?
  • 赶deadline必备AI论文网站 千笔AI VS 学术猹 研究生专属神器
  • 高级玩家必备:深度剖析 MySQL 事务隔离!
  • 题解:洛谷 P1980 [NOIP 2013 普及组] 计数问题
  • 题解:洛谷 P1009 [NOIP 1998 普及组] 阶乘之和
  • 少走弯路:专科生专属降AIGC工具 千笔·专业降AI率智能体 VS 万方智搜AI
  • 基于FPGA的视频缩放算法:4K2K输入与输出,缩放参数可控
  • 闭眼入!9个AI论文工具测评:本科生毕业论文写作全攻略
  • 好用还专业! 降AIGC平台 千笔·降AI率助手 VS 学术猹 MBA首选
  • 交稿前一晚!9个AI论文工具测评:研究生毕业论文+学术写作全攻略
  • 摆脱论文困扰! AI论文网站 千笔写作工具 VS 学术猹,自考首选!
  • 题解:洛谷 P5721 【深基4.例6】数字直角三角形
  • 光伏mppt电导增量法mppt模型,可以实现最大功率电的追踪,模型可以正常运行,可拓展性强
  • 最近在搞综合能源系统规划,发现双层优化建模挺有意思。今天咱们就来聊聊怎么用双层模型搞定微电网的多电源容量配置,手把手带你撸一遍代码实现