51nod点头网-1181 质数中的质数(质数筛法)
来源:互联网 发布:深圳软件产业基地 编辑:程序博客网 时间:2024/05/10 00:46
题目来源: Sgu
基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 收藏 关注
如果一个质数,在质数列表中的编号也是质数,那么就称之为质数中的质数。例如:3 5分别是排第2和第3的质数,所以他们是质数中的质数。现在给出一个数N,求>=N的最小的质数中的质数是多少(可以考虑用质数筛法来做)。
Input
输入一个数N(N <= 10^6)
OutPut
输出>=N的最小的质数中的质数。
Input示例
20
Output示例
31
http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1181
#include <iostream>
#include <cmath>
#include <string.h>
using namespace std;
int B[1000016],c[5000008];
int main()
{
int max=1000015,s,n,num;
B[0]=B[1]=0;B[2]=1;s=0;
for(int i=3;i<=max;i++)
if(i%2==0) B[i]=0;
else B[i]=1;
int t=(int)sqrt(max*1.0);
for(int i=3;i<=t;i++)
if(B[i]==1)
for(int j=i*i;j<=max;j+=2*i)
B[j]=0;
for(int i=2;i<=max;i++)
{ if(B[i]==1)
{s++;c[s]=i;}
} //到此为止是进行了一次素数筛选和统计
while(cin>>n)
{ num=-1;
for(int i=1;i<s;i++)
{
if(c[i]>=n)
{
for(int j=i;j<=max;j++)
if(B[j]==1) {num=c[j];break;} //确定最小质数中的质数
}
if(num!=-1) break;
}
cout<<num<<endl;
}
return 0;
}
- 51nod点头网-1181 质数中的质数(质数筛法)
- 51Nod 1181-质数中的质数(质数筛法)
- 51nod 1181 质数中的质数(质数筛法)
- 51nod 1181 质数中的质数(质数筛法)
- 51 nod 1181 质数中的质数(质数筛法)
- 51nod--1181 质数中的质数(质数筛法)
- 51nod 1181 质数中的质数(质数筛法)
- 51nod-【1181 质数中的质数(质数筛法)】
- 51nod 1181 质数中的质数(质数筛法)
- 51nod 1181 . 质数中的质数(质数筛法)
- 51nod:1181 质数中的质数(质数筛法)
- 51Nod 1181 质数中的质数(质数筛法)
- 【51Nod】1181 质数中的质数(质数筛法)
- 51Nod-1181-质数中的质数(质数筛法)
- 51Nod 1181: 质数中的质数(质数筛法)
- 51NOD 1181 质数中的质数(质数筛法)
- 51nod 1181 质数中的质数(质数筛法)
- 51 Nod 1181 质数中的质数(质数筛法)
- C8813q手机刷机
- python环境测试MySQLdb、DBUtil、sqlobject性能
- windows 下安装nodejs及其配置环境
- 【C++练习】求总数和平均值
- Linux下做C语言/C++开发的一些建议
- 51nod点头网-1181 质数中的质数(质数筛法)
- 新人测试
- 软件解耦
- 基础算法的总结之快速排序
- 汇编语言INC DEC JGE JG JLE JL JNE JE 都是什么意思
- 使用叉积进行极角排序HDU1661
- 关于JAVA集合框架的回顾
- java的一些小程序例子--2
- 图片上传代码-旧的实现方式,项目中已删除,发表做备用