素数间隙

Time Limit: 1000ms   Memory limit: 262144K  有疑问?点这里^_^

题目描写叙述

Neko猫是一个非常喜欢玩数字游戏的会说话的肥猫,常常会想到非常多非常好玩的数字游戏。有一天,它想到一个叫做素数间隙的游戏。据Neko猫的定义,素数间隙是两个相邻素数p和q组成的开区间[p, q)。所以素数间隙的长度就是q-p。

比如7和11在素数表里是两个相邻的素数。所以7和11的素数间隙的长度为11-7,为4。

如今Neko猫会给你非常多个正整数K(1<K≤1299710),让你能立马求出包括数字K的素数间隙的长度。

为方便起见。假设K是素数,则输出0。

输入

输入包括T组数据(1≤T≤1000)。每组測试数据占一行。是一个正整数K(1<K≤1299710)。

输出

输出T行,每行一个非负数。这个非负数是包括输入数字K的素数间隙的长度。不应有其它字符出如今输出中。

演示样例输入

  1. 10
  2. 11
  3. 27
  4. 2
  5. 492170

演示样例输出

  1. 4
  2. 0
  3. 6
  4. 0
  5. 114
  1. 水一发睡觉。。
  1. #include <algorithm>
  2. #include <iostream>
  3. #include <cstring>
  4. #include <cstdlib>
  5. #include <string>
  6. #include <cctype>
  7. #include <vector>
  8. #include <cstdio>
  9. #include <cmath>
  10. #include <deque>
  11. #include <stack>
  12. #include <map>
  13. #include <set>
  14. #define ll long long
  15. #define maxn 1299730
  16. #define pp pair<int,int>
  17. #define INF 0x3f3f3f3f
  18. #define max(x,y) ( ((x) > (y)) ? (x) : (y) )
  19. #define min(x,y) ( ((x) > (y)) ? (y) : (x) )
  20. using namespace std;
  21. int pri[maxn],n;
  22. void init()
  23. {
  24. 	memset(pri,1,sizeof(pri));
  25. 	pri[1]=0;
  26. 	for(int i=2;i<maxn;i++)
  27. 	{
  28. 		if(pri[i])
  29. 		{
  30. 			for(int j=2;j*i<maxn;j++)
  31. 				pri[i*j]=0;
  32. 		}
  33. 	}
  34. }
  35. int main()
  36. {
  37. 	init();
  38. 	while(~scanf("%d",&n))
  39. 	{
  40. 		if(pri[n])
  41. 		{
  42. 			puts("0");
  43. 			continue;
  44. 		}
  45. 		int l=n,r=n;
  46. 		while(!pri[--l]);
  47. 		while(!pri[++r]);
  48. 		printf("%d\n",r-l);
  49. 	}
  50. 	return 0;
  51. }

SDUT 3002-素数间隙(素数筛+暴力)的更多相关文章

  1. hdu2098 分拆素数和 素数筛

    将一个偶数拆成两个素数的和,欧拉筛暴力 #include<stdio.h> #include<string.h> #define N 10001 ]; ]; ,j; void ...

  2. 青岛理工交流赛 H题 素数间隙

    13110581088注销 素数间隙 Time Limit: 1000MS Memory limit: 262144K 题目描述 Neko猫是一个很喜欢玩数字游戏的会说话的肥猫,经常会想到很多很好玩的 ...

  3. hdu5943素数间隙与二分匹配

    题意: 给出n和s,匹配(s+1,s+2,s+3......s+n)和(1,2,3,4,5........n)让(s+x)%x==0,判断是否有解 思路: 先用程序跑一边,发现1到1e9得素数间隙小于 ...

  4. HDU 2098 分拆素数和(素数)

    HDU 2098 分拆素数和(素数) http://acm.hdu.edu.cn/showproblem.php?pid=2098 题意: 给你一个偶数,问你这个偶数有多少种方式能由两个不同的素数构成 ...

  5. BestCoder Round #85 hdu5778 abs(素数筛+暴力)

    abs 题意: 问题描述 给定一个数x,求正整数y,使得满足以下条件: 1.y-x的绝对值最小 2.y的质因数分解式中每个质因数均恰好出现2次. 输入描述 第一行输入一个整数T 每组数据有一行,一个整 ...

  6. HDU 5778 abs (BestCoder Round #85 C)素数筛+暴力

    分析:y是一个无平方因子数的平方,所以可以从sqrt(x)向上向下枚举找到第一个无平方因子比较大小 大家可能觉得这样找过去暴力,但实际上无平方因子的分布式非常密集的,相关题目,可以参考 CDOJ:无平 ...

  7. 【素数的判定-从暴力到高效】-C++

    今天我们来谈一谈素数的判定. 对于每一个OIer来说,在漫长的练习过程中,素数不可能不在我们的眼中出现,那么判定素数也是每一个OIer应该掌握的操作,那么我们今天来分享几种从暴力到高效的判定方法. 1 ...

  8. hdu 1431 素数回文(暴力打表,埃托色尼筛法)

    这题开始想时,感觉给的范围5 <= a < b <= 100,000,000太大,开数组肯定爆内存,而且100000000也不敢循环,不超时你打我,反正我是不敢循环. 这题肯定得打表 ...

  9. 素数的线性筛 && 欧拉函数

    O(n) 筛选素数 #include<bits/stdc++.h> using namespace std; const int M = 1e6 + 10 ; int mindiv[M] ...

随机推荐

  1. hdu3183 rmq求区间最值的下标

    两个月前做的题,以后可以看看,是rmq关于求区间最值的下标 /* hdu3183 终点 给一个整数,可以删除m位,留下的数字形成一个新的整数 rmq 取n-m个数,使形成的数最小 */ #includ ...

  2. python 全栈开发,Day22(封装,property,classmethod,staticmethod)

    一.封装 封装 : 广义上的 :把一堆东西装在一个容器里 狭义上的 :会对一种现象起一个专门属于它的名字 函数和属性装到了一个非全局的命名空间 —— 封装 隐藏对象的属性和实现细节,仅对外提供公共访问 ...

  3. 步步为营-23-通过GridView实现增删改

    说明:把xml中的数据放入到数据源list中然后显示到gridview中,参考上一节内容 1 UI页面 2创建student类 public class Student { public int ID ...

  4. checkbox简单例子

    写个简单的例子,如下:html页面部分:<input type="checkbox" value="1" name="check"/& ...

  5. ERP产品购进系统商品管理(三十三)

    购进系统总体架构图: 总体业务: 流程图: 自定义函数: -- Description: 根据渠道编号查询渠道名称 -- ======================================= ...

  6. hibernate查询竟然有6种方法

    hibernate查询的6种方法 1.HQL查询 2.对象化查询Criteria方法 3.动态查询DetachedCriteria 4.例子查询 5.sql查询 6.命名查询 1.HQL查询 stat ...

  7. openstack学习-创建一台云主机(七)

    一.创建基础环境 1.检查网络是否正常 [root@linux-node1 ~]# openstack network agent list +---------------------------- ...

  8. BZOJ1966 [Ahoi2005]VIRUS 病毒检测 动态规划

    欢迎访问~原文出处——博客园-zhouzhendong 去博客园看该题解 题目传送门 - BZOJ1966 题意概括 现在有一些串和一个病毒模板.让你统计非病毒串的总数.串个数<=500. 串由 ...

  9. POI搜索简介

    用户输入——用户输出-----------------------------------------------------------而POI搜索引擎,需要做的就是拿到输入条件,给出用户比较满意的 ...

  10. python tkinter-按钮.标签.文本框、输入框

    按钮 无功能按钮 Button的text属性显示按钮上的文本 tkinter.Button(form, text='hello button').pack() 无论怎么变幻窗体大小,永远都在窗体的最上 ...