UVA 1644 Prime Gap
2015-08-20 17:05
435 查看
The sequence of n - 1 consecutive composite numbers (positive integers that are not prime and not equal to 1) lying between two successive prime numbers p and p + n is
called a prime gap of length n . For example,
24,
25, 26, 27, 28
between 23 and 29 is a prime gap of length 6.
Your mission is to write a program to calculate, for a given positive integer k , the length of the prime gap that contains k . For convenience,
the length is considered 0 in case no prime gap contains k .
is indicated by a line containing a single zero.
or `0' otherwise. No other characters should occur in the output.
called a prime gap of length n . For example,
24,
25, 26, 27, 28
between 23 and 29 is a prime gap of length 6.
Your mission is to write a program to calculate, for a given positive integer k , the length of the prime gap that contains k . For convenience,
the length is considered 0 in case no prime gap contains k .
Input
The input is a sequence of lines each of which contains a single positive integer. Each positive integer is greater than 1 and less than or equal to the 100000th prime number, which is 1299709. The end of the inputis indicated by a line containing a single zero.
Output
The output should be composed of lines each of which contains a single non-negative integer. It is the length of the prime gap that contains the corresponding positive integer in the input if it is a composite number,or `0' otherwise. No other characters should occur in the output.
Sample Input
10 11 27 2 492170 0
Sample Output
4 0 6 0 114
#include<iostream> #include<cstring> #include<cmath> using namespace std; const int maxx=1299709; int a[maxx+5]; void E() { a[maxx]=0; for(int i=2;i<maxx;i++) { for(int j=2;j<sqrt((double)i+0.5);j++) { if(i%j==0) { a[i]=1; break; } } } } int main() { int n; memset(a,0,sizeof(a)); E(); while(cin>>n) { if(n==0) break; if(a ==0) { cout<<"0"<<endl; continue; } int mx=n,mn=n; while(a[mx]!=0||a[mn]!=0) { if(a[mx]!=0) mx++; if(a[mn]!=0) mn--; } //cout<<mx<<" "<<mn<<endl; cout<<mx-mn<<endl; } }
相关文章推荐
- centOS建立bind服务,做为内网DNS解析服务安装记录
- 个人的尚学堂数据库oracle笔记(3)
- 八大排序算法
- java awt根据字符串的信息和字体获取所占有的像素
- rpm 命令参数使用详解
- flash透明按钮
- [sicp]huffman编码的实现 @ Scheme
- js限制文本框的输入内容代码分享(3类)
- 虚拟化--045 利用openfiler搭建存储
- 微信演示制作软件易企秀的上手体验(图文)
- oem7f7激活win7时出现Cannot open file C:/OEMSF
- LeetCode 135:candy 题解 Python
- iOS的Bitcode是什么?怎么配置?
- sql2012DAC连接
- DEV GridControl(1)
- 黑马程序员——继承、抽象类、接口、多态
- 微信演示制作软件易企秀的上手体验(图文)
- 基于结构分析的句子语义倾向性计算算法(IEEE2013)
- Sublime Text2/3怎样在Mac OSX中配置CTags插件
- Linux下安装数据库时设置内核参数