详解回文质数---洛谷1217---C语言
感谢李振阳学长的辛苦调试!!!
写一个程序来找出范围 [a,b] (5 \le a < b \le 100,000,000)[a,b](5≤a<b≤100,000,000)( 一亿)间的所有回文质数。
输入格式
第 1 行: 二个整数 a 和 b .
输出格式
输出一个回文质数的列表,一行一个。
本题采用构造法
首先要知道的一个点:
偶数位的回文质数都可被11整除,所以构造奇数位的即可,但是11不可以被忘了哦!!!
所以这段代码就是这个意思
if(i == 9 && a <= 11 && b >= 11){puts("11"); }
下面就是具体代码:
#include<stdio.h>int is_prime(int x) //判断质数的函数
{if(x == 2) return 1;for(int i = 2; i*i <= x; i++) {if(x % i == 0) return 0;}return 1;
}int main()
{int a, b;scanf("%d %d", &a, &b); //输入范围for(int i = 5; i <= 100000; i ++) {if(i == 9 && a <= 11 && b >= 11) //其实也可以i=8,因为偶位数的回文数都可被11整除,我们就只需要构造奇数位的即可,但11也是偶数位的,所以这个if语句就是要输出11.{puts("11"); } int tmp = i/10, ans = i; //构造奇数位的回文数,tmp是第二位while(tmp > 0) //tmp有着判断位数的作用{ans *= 10; ans = ans + tmp%10; //将数反转相加tmp /= 10;}if(ans > b) break;if(ans >= a && is_prime(ans)) printf("%d\n", ans); //再判断是否为质数}return 0;
}
详解回文质数---洛谷1217---C语言相关推荐
- 暴力枚举——回文质数(洛谷 P1217)
题目选自洛谷P1217 此题异常的坑,需要很多的处理和简化: 1.回文质数一定不是2的倍数,因为质数不可能是2的倍数: 2.最大的回文质数是9989899(自己测). 于是,本蒟蒻的代码就出来了 题目 ...
- C/C++实现回文质数(超详解)【沈七】
C/C++实现回文质数(超详解) 题目链接 题目描述 输入样例 **题解部分** **完整代码** **未完待续** 参考文章 唤我沈七就行嘿嘿. 大一软件工程在读. 菜鸡蒟蒻想在博客中记录一些算法学 ...
- 洛谷 - P1217 [USACO1.5]回文质数 Prime Palindromes(欧拉线性筛+数论小知识)
题目链接:点击查看 题目大意:给出一个a和b,求出区间[a,b]中所有回文质数,回文质数指的是一个数既是回文数也是质数 题目分析:首先质数好判断,我们只需要用欧拉筛预处理打好表即可,判断回文数我们也只 ...
- 洛谷P1217 回文质数
题目描述 因为 151 既是一个质数又是一个回文数(从左到右和从右到左是看一样的),所以 151 是回文质数. 写一个程序来找出范围 [a,b] (5 \le a < b \le 100,000 ...
- 回文质数(洛谷-P1217)
题目描述 因为151既是一个质数又是一个回文数(从左到右和从右到左是看一样的),所以 151 是回文质数. 写一个程序来找出范围[a,b](5 <= a < b <= 100,000 ...
- 洛谷P1217 [USACO1.5]回文质数 Prime Palindromes
我就叫大家打表吧,自己也刚学会: 由于有些题目直接提交又会超时,所以打表是一个不错的解决方法. 对于回文质数而言,判断回文,判断质数就ok了 1.存入文件 #include<bits/stdc+ ...
- 洛谷 P1217 [USACO1.5]回文质数 Prime Palindromes 题解 C/C++
知识点: 回文数有两种 一种是单数位数,abcba,一种是双数位数,abccba 而双数位数是质数的只有11,即偶位回文数全不是质数除了11:所以不需要枚举到1亿,到1千万就好了 以下几种方法供参考 ...
- P1217 [USACO1.5]回文质数 Prime Palindromes 题解(来源:洛古)
[USACO1.5]回文质数 Prime Palindromes 题目描述 因为 151 151 151 既是一个质数又是一个回文数(从左到右和从右到左是看一样的),所以 151 151 151 是回 ...
- P1217 回文质数(打表)
2020.2.9更新,修改打表程序,用上freopen("Table.txt", "w", stdout);程序更加简洁 题目描述 因为151既是一个质数又是一 ...
最新文章
- vue 在浏览器控制台怎么调试 谷歌插件vue Devtools
- CrackMe_001
- 2007年3月东北微软技术活动预告
- 从不用 try-catch 实现的 async/await 语法说错误处理
- 性能强悍的MCU,主频干到GHz
- python微信集成_Python微信公众号后台开发005:集成智能聊天机器人​
- 【python】time,datetime,string相互转换
- 做一个项目,平时都用到哪些工具提高效率(中)
- androidfiletransfer_mac手机助手(Android File Transfer)下载_mac手机助手(Android File Transfer)官方下载...
- AJPFX关于JDK,JRE,JVM的区别与联系
- [笔试面试题] 10-C和C++区别相关
- Developer Zone Android*
- C 杂谈之 Apache的模块开发 (一)
- 怎么用计算机作word文档,大学计算机作业word使用(6页)-原创力文档
- 腾讯视频VIP会员,周卡特价9.5元!
- 需求通信相关技术人才
- 技巧篇 之 Just do it (这将会是一个漫长的历程。。。)
- PowerPoint 录制屏幕+解决找不到免费录制屏幕软件
- C++---四舍五入与保留小数
- ajax的同步与异步