博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
HDU1397 POJ2909 UVA686 UVALive5674 ZOJ1657 Goldbach's Conjecture(II)
阅读量:6913 次
发布时间:2019-06-27

本文共 1974 字,大约阅读时间需要 6 分钟。

Regionals 1998 >> Asia - Tokyo

问题链接:。

问题简述:参见上述链接。

问题分析

这个问题是验证哥德巴赫猜想,对于输入的n,计算和等于n的奇素数对的个数。

不预先打表时间上会超时。

程序说明

这个问题,HDU1397和UVA686的测试数据是不一样的。最初做的程序,HDU中AC,而UVA中WA。估计原因是UVA868中的n是包含奇数的,例如7=2+5。所以后来写的程序将计算素数对的循环做了修改,程序通过了。

这里分别给出C语言程序和C++语言程序的两个版本。

AC的C语言程序如下

/* HDU1397 POJ2909 UVA686 Goldbach's Conjecture(II) */#include 
#include
#define MAXN 32767int prime[MAXN+2] = {0, 0, 1, 1, 0};// 试除法判断一个数是否为素数int isprime(int n){ int end2, i; end2 = sqrt(n); for(i=3; i<=end2; i+=2) { if(n % i == 0) break; } return i > end2 ? 1 : 0;}void maketable(int n){ int i; for(i=5; i
AC的C++语言程序如下:

/* HDU1397 POJ2909 UVA686 UVALive5674 Goldbach's Conjecture(II) */#include 
#include
#include
using namespace std;const int MAXN = 2000000;bool prime[MAXN+1] = {false, false, true};// 埃氏筛选法void esieve(bool sflag[], int n){ // 初始化 for(int i=3; i<=n; i++) { sflag[i++] = true; sflag[i] = false; } // 筛选 int max = sqrt(n); for(int i=3; i<=max; i++) { if(sflag[i]) { for(int j=i+i; j <= n; j+=i) sflag[j] = false; } }}int main(){ esieve(prime, MAXN); int n, count, i; while(scanf("%d", &n) != EOF) { // 判定结束条件 if(n == 0) break; // 计算素数对个数 count = 0; for(i=2; i<=n/2; i++) if(prime[i] && prime[n-i]) count++; // 输出结果 printf("%d\n", count); } return 0;}

HDU中AC,而UVA中WA的C语言程序如下:

/* HDU1397 POJ2909 UVA686 Goldbach's Conjecture(II) */#include 
#include
#define MAXN 32767int prime[MAXN+2] = {0, 0, 1, 3, 0};// 试除法判断一个数是否为素数int isprime(int n){ int end2, i; end2 = sqrt(n); for(i=3; i<=end2; i+=2) { if(n % i == 0) break; } return i > end2 ? 1 : 0;}void maketable(int n){ int i; for(i=5; i

转载于:https://www.cnblogs.com/tigerisland/p/7564587.html

你可能感兴趣的文章
startService过程
查看>>
内容创业转舵
查看>>
leetcode 120 三角形最小路径和
查看>>
圣杯布局进阶版-flex布局实现
查看>>
《速度与激情》范迪塞尔代言!雅迪和高端“死磕”到底
查看>>
LLDB 知多少
查看>>
淘宝、网易移动端 px 转换 rem 原理,Vue-cli 实现 px 转换 rem
查看>>
js监听gif停止 libgif-js Gif 操作(开始,暂停,移动帧...) 功能强大
查看>>
java并发编程 • 核心 • 状态管理
查看>>
[译] 从没有人告诉过我的 CSS 小知识
查看>>
这个乐趣,支付宝落地实践
查看>>
Golang 1.x版本泛型编程
查看>>
武汉区块链软件技术公司:区块链应用为何成为现实版的“海市蜃楼”
查看>>
关于制作pod时使用xib等资源文件的问题
查看>>
《代码大全》读书笔记-构建的前期
查看>>
混合云管理问题,你解决了么?
查看>>
从简单二叉树问题重新来看深度优先搜索
查看>>
python 爬虫系列-入门教程(2)
查看>>
学习前端,必须要知道的五个学习建议!
查看>>
面试了若干位Java后端的候选人,给广大程序员的一点建议
查看>>