POJ-Prime Gap 素数筛选+二分查找
问你一个数在一个连续区间,这个区间全为和数的长度。
代码如下:
#include <cstring> #include <cstdio> #include <cstdlib> #include <algorithm> #define MAXN 1300000 using namespace std;int p[MAXN+5], rec[100005], N;void pre() {int k;for (int i = 4; i <= MAXN; i += 2) {p[i] = 1;} for (int i = 3; i <= 1141; i += 2) {if (!p[i]) {k = 2 * i;for (int j = i * i; j <= MAXN; j += k) {p[j] = 1; } }}for (int i = 2, j = 0; j <= 100000; ++i) {if (!p[i]) {rec[++j] = i;}} }int bsearch(int l, int r, int x, int f) {int mid;while (l <= r) {mid = (l + r) >> 1;if (x < rec[mid]) {r = mid - 1;}else {l = mid + 1;}} if (f == 1) {return rec[r];}else {return rec[l];} }int main() {pre();int l, r;while (scanf("%d", &N), N) {if (!p[N]) {puts("0");continue;}l = bsearch(1, 100000, N, 1);r = bsearch(1, 100000, N, 2);printf("%d\n", r - l);}return 0; }
POJ-Prime Gap 素数筛选+二分查找相关推荐
- POJ 1064 分割线缆(二分查找)
题目链接:http://poj.org/problem?id=1064 题目大意:多根电缆切成指定段数(每段相同长度),求每段线缆的最大长度(精确到0.01) 这题精度控制是难点,方法很简单,二分查找 ...
- POJ 3258 River Hopscotch(二分查找答案)
一个不错的二分,注释在代码里 #include <stdio.h> #include <cstring> #include <algorithm> #include ...
- POJ 3122 分披萨(二分查找)
题目链接:http://poj.org/problem?id=3122 题目大意: 有 n 块披萨(大小不一样), f 个人分,包含主人自己 f+1 人: 每人吃的披萨必须是一块披萨上切下来的.每个人 ...
- c语言分蛋糕均匀正方形,分蛋糕(C - 二分查找)
分蛋糕 题目链接:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=85904#problem/C Description My birthd ...
- POJ 3518 Prime Gap(素数题)
[题意简述]:输入一个数,假设这个数是素数就输出0,假设不是素数就输出离它近期的两个素数的差值,叫做Prime Gap. [分析]:这题过得非常险.由于我是打的素数表. 由于最大的素数是1299709 ...
- C语言素数筛选法(prime seive) 算法(附完整源码)
素数筛选prime seive算法 C语言素数筛选prime seive算法完整源码(定义,实现,main函数测试) C语言素数筛选prime seive算法完整源码(定义,实现,main函数测试) ...
- POJ 2785 有多少种4个数相加等于0的方案(二分查找 or hash)
文章目录 1.二分查找法 1.1 思路: 1.2 AC代码 2.hash查找法 2.1 思路: 2.2 Wrong Answer 代码 2.3 Time Limit Exceeded 代码 2.4 偷 ...
- PAT甲题题解-1059. Prime Factors (25)-素数筛选法
用素数筛选法即可. 范围long int,其实大小范围和int一样,一开始以为是指long long,想这就麻烦了该怎么弄. 而现在其实就是int的范围,那难度档次就不一样了,瞬间变成水题一枚,因为i ...
- Python:实现prime sieve eratosthenes埃拉托斯特尼素数筛选法算法(附完整源码)
Python:实现prime sieve eratosthenes埃拉托斯特尼素数筛选法算法 # flake8: noqa def prime_sieve_eratosthenes(num):prim ...
最新文章
- 国产研发管理工具也在慢慢壮大,Worktile7岁了!
- c语言符号txt下载,c语言中符号含义.txt
- 皮一皮:终于知道乔峰为什么每次要吃那么多了!
- Integrating Spring and EHCache
- 团队软件开发第一次冲刺(六)
- 安卓机更新系统会卡吗_【ios13更新】最全的ios13系统的攻略,最大一次更新,升级绝对不会后悔吗?来看看...
- linux网络编程之SCTP套接字常用接口
- python class用法理解_通过钢铁侠变身快速理解Python的装饰器用法
- python学了真的很有用吗-会Python的人工作不会太差?编程课真的有必要学吗?
- 学生成绩管理系统(C语言版)
- java手机视频下载_使用JAVA合并哔哩哔哩手机客户端下载的视频
- 如何计算 R 中 T 检验 的 P 值
- MySQL学习笔记10(流程控制、函数)
- 理解一下 GK Zone 20 与GK Zone 20N的区别
- 【C语言】从你好世界开始
- shopex4.8.5 php5.6,惊爆漏洞ShopEX4.8.5隐患漏洞,最终解决方法ShopEX4.8.5安装完成后打开显示:Access denied by install.lock...
- 面向对象-当谈论面向对象的时候,我们到底在谈论什么?
- JS实现:纵向表格,且可在当前行下方添加一行
- 微交易,时下最为红火
- 详细的网络安全基础,一篇文章统统告诉你