Problem Description:

当看到GDUFE-GAME宣传海报上提到"场内人员可以在任意区域组织游戏"时,QWER按不住自己蠢蠢欲动的心,当场就出了一道题:定义QWER数为任意相邻两个素数之和加上1且是素数的数(eg: 6 = 2 + 3 + 1, 6不是素数, 所以6不是QWER数; 13 = 5 + 7 + 1, 13是素数,所以13是QWER数),给出一个数字n,10秒内求出1到n之间所有QWER数便能获得QWER的一次拥抱。作为QWER的迷弟/迷妹,你也按不住自己放在键盘上的麒麟臂,飞速得写代码,准备去收下QWER的拥抱。

Input:

数据包括多个测试实例。
每个测试实例包含一个整数 n (15 ≤ n ≤ 1000000)。

Output:

对于每个测试实例,从小到大输出 1 到 n 之间所有的QWER数(每个QWER数之间间隔一个空格)。

Sample Input:

15
20

Sample Output:

13
13 19
解题思路:先用线性筛打素数表,接下来给定范围内枚举相邻的素数和加1是否满足是素数且不超过n则保存在qwer数组中,最后输出。要用线性筛啊,不然老TLE!!!
 #include<bits/stdc++.h>
using namespace std;
#define MAXSIZE 1000000
bool isp[MAXSIZE];
int prime[MAXSIZE],qwer[MAXSIZE];//保存素数
int main()
{
int cnt=;
memset(isp,true,sizeof(isp)); //打素数表
memset(prime,,sizeof(prime));
isp[]=isp[]=false;
for(int i=;i<MAXSIZE;++i){
if(isp[i])
prime[++cnt]=i;//从下标1开始保存素数
for(int j=;j<=cnt && i*prime[j]<MAXSIZE;++j){
isp[i*prime[j]]=false;
if(i%prime[j]==)
break;
}
}
int tmp,k,n;
while(cin>>n){
tmp=k=;
for(int i=;prime[i]<=n;++i){ //从2开始枚举
tmp=prime[i-]+prime[i]+;
if(tmp>n)break;
if(isp[tmp])qwer[++k]=tmp;
}
for(int i=;i<k;++i)
cout<<qwer[i]<<' ';
cout<<qwer[k]<<endl;
}
return ;
}

ACM_数数?诶?这么简单?的更多相关文章

  1. ACM_数数有多少(第二类Stirling数-递推dp)

    数数有多少 Time Limit: 2000/1000ms (Java/Others) Problem Description: 小财最近新开了一家公司,招了n个员工,但是因为资金问题,办公楼只有m间 ...

  2. 「SDOI2014」数数 解题报告

    「SDOI2014」数数 题目描述 我们称一个正整数 \(N\) 是幸运数,当且仅当它的十进制表示中不包含数字串集合 \(S\) 中任意一个元素作为其子串. 例如当 \(S=(\)22, 333, 0 ...

  3. CF1109DSasha and Interesting Fact from Graph Theory(数数)

    题面 传送门 前置芝士 Prufer codes与Generalized Cayley's Formula 题解 不行了脑子已经咕咕了连这么简单的数数题都不会了-- 首先这两个特殊点到底是啥并没有影响 ...

  4. [COGS 2065]学数数

    2065. 学数数 ★★★☆   输入文件:jxthree.in   输出文件:jxthree.out   简单对比时间限制:1 s   内存限制:256 MB [题目描述] 从前有一只咩,还有一只叽 ...

  5. NOIP模拟测试29「爬山·学数数·七十和十七」

    爬山题解不想写了 学数数 离散化然后找到以每一个值为最大值的连续子段有多少个,然后开个桶维护 那么怎么找以每一个值为最大值的连续子段个数 方法1(我的极笨的方法) 考试时我的丑陋思路, 定义极左值为左 ...

  6. 8.23考试总结(NOIP模拟46)[数数·数树·鼠树·ckw的树]

    T1 数数 解题思路 大概是一个签到题的感觉...(但是 pyt 并没有签上) 第一题当然可以找规律,但是咱们还是老老实实搞正解吧... 先从小到大拍个序,这样可以保证 \(a_l<a_r\) ...

  7. 【BZOJ】【3530】【SDOI2014】数数

    AC自动机/数位DP orz zyf 好题啊= =同时加深了我对AC自动机(这个应该可以叫Trie图了吧……出边补全!)和数位DP的理解……不过不能自己写出来还真是弱…… /************* ...

  8. BZOJ3530: [Sdoi2014]数数

    3530: [Sdoi2014]数数 Time Limit: 10 Sec  Memory Limit: 512 MBSubmit: 322  Solved: 188[Submit][Status] ...

  9. 【HDU3530】 [Sdoi2014]数数 (AC自动机+数位DP)

    3530: [Sdoi2014]数数 Time Limit: 10 Sec  Memory Limit: 512 MBSubmit: 682  Solved: 364 Description 我们称一 ...

  10. COJ 0036 数数happy有多少个?

    数数happy有多少个? 难度级别:B: 运行时间限制:1000ms: 运行空间限制:51200KB: 代码长度限制:2000000B 试题描述 图图是个爱动脑子.观察能力很强的好学生.近期他正学英语 ...

随机推荐

  1. Python遍历路径下文件并转换成UTF-8编码

    http://www.cnblogs.com/wuyuegb2312/archive/2013/01/11/2856772.html 开始学Python,这篇文章来自于应用需求. os.walk很方便 ...

  2. Deepin-添加path

    以管理员权限添加path(Debian系列) sudo gedit /etc/profile 添加path路径格式是: export PATH=”$PATH:your path1:your path2 ...

  3. Python第五讲

    一.冒泡算法 1.将两个变量的值互换 a1 = 123 a2 = 456 #要想将a1与a2的值进行位置互换需要借助一个中间变量(temp) temp = a1#将a1的值赋值给temp(temp=1 ...

  4. JavaSE----API之集合(Collection、List及其子类、Set及其子类、JDK1.5新特性)

    5.集合类 集合类的由来: 对象用于封装特有数据,对象多了须要存储:假设对象的个数不确定.就使用集合容器进行存储. 集合容器由于内部的数据结构不同,有多种详细容器.不断的向上抽取,就形成了集合框架. ...

  5. Android——SlidingMenu学习总结

    来源 SlidingMenu是github上比較火开源库.很强大,不但但是简单的设置实现两側滑动菜单,还能够设置菜单的阴影.渐变色.划动模式等. 下载地址:https://github.com/jfe ...

  6. Saltstack运行cmd.run重新启动tomcat后出现日志乱码(15)

    Saltstack使用的cmd.run调用的是核心模块cmdmod.py,以下我们来看一下cmdmod.py模块的源代码: cat /usr/lib/python2.6/site-packages/s ...

  7. Unity5.1 新的网络引擎UNET(八) UNET 系统概括

     孙广东   2015.7.12 Server and Host 在Unity 的 网络系统,游戏有 一个server和多个client. 当没有专用的server时,client之中的一个扮演s ...

  8. C语言的结构体和 C++结构体的区别

     C语言的结构体和 C++结构体的区别 关于C++中声明结构体中需要使用构造器创建实例对象的语法: <C++的结构体构造方法的基本概念:结构体的构造方法需要和结构体的名字相同,并且无返回值,也不 ...

  9. encodeURIComponent

    <script type="text/javascript"> function show(){ var f="#wer中文测试"; f = enc ...

  10. 改进Source Insight对汉字的支持

    转自:http://blog.chinaunix.net/u/8681/showart_1356633.html http://blog.163.com/zhuzhihuacan@126/blog/s ...