HDU1262 寻找素数对【素数】
寻找素数对
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 14663 Accepted Submission(s): 7357
Problem Description
哥德巴赫猜想大家都知道一点吧.我们现在不是想证明这个结论,而是想在程序语言内部能够表示的数集中,任意取出一个偶数,来寻找两个素数,使得其和等于该偶数.
做好了这件实事,就能说明这个猜想是成立的.
由于可以有不同的素数对来表示同一个偶数,所以专门要求所寻找的素数对是两个值最相近的.
Input
输入中是一些偶整数M(5<M<=10000).
Output
对于每个偶数,输出两个彼此最接近的素数,其和等于该偶数.
Sample Input
20 30 40
Sample Output
7 13 13 17 17 23
Source
浙江工业大学第四届大学生程序设计竞赛
问题链接:HDU1262 寻找素数对
问题简述:参见上述链接。
问题分析:
对于输入的偶数,先求得其一半的值,若不为奇数则减去1,然后从这个奇数开始从大到小用奇数试探。根据哥德巴赫猜想,一个偶数可以分解为两个素数之和,其中一个必然小于或等于这个偶数的一半。
有了上述的一个奇数p,对于输入的m来说,另外一个奇数就是m-p。
只要测试这两个奇数都是素数,就得到了差距最小的两个素数,输出即可。
程序说明:(略)
AC的C语言程序如下:
/* HDU 1262 寻找素数对 */#include <stdio.h>
#include <math.h>int isprime(int n)
{if(n == 3)return 1;int temp, i;temp = n % 6;if(temp != 1 && temp != 5)return 0;temp = sqrt(n);for(i=3; i<=temp; i+=2)if(n % i == 0)return 0;return 1;
}int main(void)
{int m, p;while(scanf("%d",&m)!=EOF) {p = m / 2;if(p % 2 == 0)p--;for(;;) {if(p <= 2)break;if(!isprime(p)) {p -= 2;continue;}if(isprime(m - p)) {printf("%d %d\n", p, m-p);break;}p -= 2;}}return 0;
}
HDU1262 寻找素数对【素数】相关推荐
- HDU1262 寻找素数对
问题链接:HDU1262 寻找素数对 问题简述:参见上述链接. 问题分析:对于输入的偶数,先求得其一半的值,若不为奇数则减去1,然后从这个奇数开始从大到小用奇数试探.根据哥德巴赫猜想,一个偶数可以分解 ...
- 反转给定区间的链表C语言,寻找素数对(C++)
寻找素数对(C++) 寻找素数对(C++) 描述 输入部分因为过于没做处理,读者自行补充 代码 #include #include using namespace std; int isPalind( ...
- 寻找素数对(JSU-ZJJ)
题目描述 哥德巴赫猜想大家都知道一点吧.我们现在不是想证明这个结论,而是想在程序语言内部能够表示的数集中,任意取出一个偶数,来寻找两个素数,使得其和等于该偶数. 做好了这件实事,就能说明这个猜想是成立 ...
- 除了寻找梅森素数,分布式技术还能做这些!
▼更多精彩推荐,请关注我们▼ 公元前300多年,古希腊数学家欧几里得开启了研究2p-1这类素数的先河,随后也吸引了众多欧洲数学家们的研究兴趣.其中有一位叫马林·梅森的法国人,因其最早系统而深入的研究2 ...
- c语言 生成大素数,C语言实现寻找大素数
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 找到一亿内所有素数并写入文件用时 35秒. #include "math.h" #include "stdio.h" ...
- c语言素数程序出现大空行,C语言实现寻找大素数
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 找到一亿内所有素数并写入文件用时 35秒. #include "math.h" #include "stdio.h" ...
- 用c语言产生大素数,C语言实现寻找大素数
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 找到一亿内所有素数并写入文件用时 35秒. #include "math.h" #include "stdio.h" ...
- HDU 1262 寻找素数对 模拟题
题目描述:输入一个偶数,判断这个偶数可以由哪两个差值最小的素数相加,输出这两个素数. 题目分析:模拟题,注意的是为了提高效率,在逐个进行判断时,只要从2判断到n/2就可以了,并且最好用打表法判断素数. ...
- c语言实现大素数的生成,C语言实现寻找大素数
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 找到一亿内所有素数并写入文件用时 35秒. #include "math.h" #include "stdio.h" ...
最新文章
- Java项目:嘟嘟图片展览馆管理系统(java+Springboot+SpringMVC+JPA+Jsp+maven+mysql)
- html语言文字闪烁,html+CSS3实现的文字闪烁特效
- 2020图灵年度好书大赏 | 15周年视频纪念版
- 优化CSS在网页中的加载方式
- Consul入门06 - 键/值对数据
- python 之信号Signal
- 自动装配有哪些局限性?
- 台湾印象之五:宝岛万象
- linux7 chkconfig,centos 6-7 chkconfig -systemctl关系对比
- 用了python之后笔记本卡了_应用
- HTML中用弹性布局设置位置,HTML的flex弹性布局
- oracle中sql语句排序,Oracle SQL排序方式与case语句
- 从富文本中截取图片_JS 获取富文本中的第一张图片 (正则表达式)
- Linus Torvalds:未来 25 年,Linux 风采依旧!
- 文末资源 | 官宣:GitHub私有仓库免费啦!--说微软收购GitHub是坏事的你站出来!...
- 苹果系统上安装linux系统,Mac OS X下制作安装Linux系统的USB启动盘
- 虚拟机安装未能启动服务器,虚拟机里安装Windowsserver2016,部署wsus出现无法启动和配置...
- 新手平面设计师如何在网上接单赚钱?
- c语言三种结构化程序设计方法,C语言中用于结构化程序设计的三种基本结构是什么...
- 供应链库存管理-库存控制策略
热门文章
- SQL中 拆解函数 之 strsplit()
- MySQL5.7安装教程(windows .zip)
- php求add函数,PHP函数每日一贴之字符串函数-addcslashes()函数
- 水仙花区间java_给你A和B,求[A,B]区间内有多少个水仙花数 输入描述: 两个整数,用空格隔开,保证数字...
- lcl手术和飞秒区别_关于全飞秒价格的那些事!你知道吗?
- scala中的match
- java懒加载注解_在springboot中实现个别bean懒加载的操作
- JSON序列化视图展示
- 网络传输大数据——内存映射
- VS2010+Opencv_2.4.7+win7的配置攻略及错误解决