As we all know,the handsome boy, Zcat, has a fever of flat shoes. He sings it on the class, in the dormitory and the way he come back from the machinery room to his dorm.One day , he sing it on the way, just like

  "MY skating shoes are the most fashion one
  At the way back to home I couldn't stop
  rubbing rubbing
  rubbing at such smooth floor
  With the moonlight ,I was able to see my shadow was either very close or far
  I felt that my step was forced by a kind of strength
  With the skating shoes ,I will not afraid anything around the world
  One step two steps,every one was just like zhuaya
  The motion which was like a ghost was rubbing and rubbing
  I beat to beat for myself
  It's the best moment of my life
  I'd got to finish my favorite dancing
  At the terrfic street where moonlight fall
  I told myself that it really wasn't dream
  One step two steps ,every one was just like zhuaya
  The gost step was rubbing and rubbing
  rubbing at such smooth floor
  The motion which was like a ghost was rubbing and rubbing 
  One step two steps,every one was just like zhuaya
  One step two steps,every one was just like zhuaya
⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯“

On he sings this,he sees a pretty girl standing on by the roadside. Zcat wants to see the pretty girl's face. Zcat knows the distance between he and her is n(1≤n≤1000000) meters. Zcat also wants to see the girl's face clearly. So he must move forward exactly n meters.To show the girl his favourite dancing,he has to follow the lyric One step two stepsof flat shoes. When the lyric is one step, he will move exactly 1 meter. When the lyric is two steps, he will move exactly 2 meters. Now, Zcat knows the whole lyric. He wants to know is there a time he can start, then move forward following the lyric, and he will see the pretty girl clearly.

Input

The first line contains a single number n(1≤n≤1000000) denotes the length of the lyric of One step and Two steps.

The second line contains n numbers.Anyone of these is 1 or 2.

The third line contains a single number q(1≤q≤3000000) denotes the time of question.

The next line contains q numbers denote then distance between Zcat and the pretty girl.

Output

To every question, if Zcat can see the girl clearly, print Yes, else print No.

Sample input and output

Sample Input Sample Output
8
2 1 1 1 1 2 2 2
6
1 3 5 7 9 11
Yes
Yes
Yes
Yes
Yes
No

解题报告

令 L = min ( s1 , s2 )

s1 为从左边开始扫,连续2的个数

s2 为从右边开始扫,连续2的个数

那么无法到达的距离为:

Len = 所有数之和 - 1

for(int i = 0 ; i < L; ++ i)
{
arrive[Len-i*2] = false;
}
这样,对于所有询问,就可以在O(1)的时间内做出回答
#include <iostream>
#include <cstring>
#include <algorithm>
using namespace std;
const int maxn = + ;
int A[maxn];
bool arrive[*+]; int main(int argc,char *argv[])
{
int n;
scanf("%d",&n);
int sum = ;
memset(arrive,true,sizeof(arrive));
for(int i = ; i < n ; ++ i)
{
scanf("%d",&A[i]);
sum += A[i];
}
int q;
int host = sum-;
int q1 = , q2 = ;
for(int i = ; i < n ; ++ i)
if (A[i] == )
break;
else
q1++;
for(int i = n- ; i >= ; --i)
if (A[i] == )
break;
else
q2++;
int thisq = min(q1,q2);
for(int i = ; i < thisq; ++ i)
{
arrive[host-i*] = false;
}
scanf("%d",&q);
while(q--)
{
int a;
scanf("%d",&a);
if (a > sum)
{
printf("No\n");
continue;
}
if(!arrive[a])
printf("No\n");
else
printf("Yes\n");
}
return ;
}
 

UESTC_One Step Two Steps CDOJ 1027的更多相关文章

  1. [8.1] Triple Step

    A child is running up a staircase with n steps and can hop either 1 step, 2 steps, or 3 steps at a t ...

  2. animation中的steps()逐帧动画

    在我们平时做宽高确定,需要背景图片切换的效果时,我如果用的是一张大的png图片.而且恰好是所有小图都是从左向右排列的,那么 我们只需测量出某一个小图距左侧有多少像素(x),然后我们banckgroun ...

  3. AWS Step Function Serverless Applications

    Installing VS Components To follow along with this article, you must have an AWS account and install ...

  4. Steps 组件的设计与实现

    NutUI 组件源码揭秘 前言 本文的主题是 Steps 组件的设计与实现.Steps 组件是 Steps 步骤和 Timeline 组件结合的组件,在此之前他们是两个不同的组件,在 NutUI 最近 ...

  5. [LeetCode] Climbing Stairs 爬梯子问题

    You are climbing a stair case. It takes n steps to reach to the top. Each time you can either climb ...

  6. jquery——移动端滚动条插件iScroll.js

    官网:http://cubiq.org/iscroll-5 demo: 滚动刷新:http://cubiq.org/dropbox/iscroll4/examples/pull-to-refresh/ ...

  7. Model--汇总

    NSFileManager.NSURL.NSFileHandle.NSData.NSXMLParser.NSUserDefaults.NSKeyedArchiver.NSKeyedUnarchiver ...

  8. javascript实现汉诺塔动画效果

    javascript实现汉诺塔动画效果 当初以为不用html5也很简单,踩了javascript单线程的大坑后终于做出来了,没事可以研究下,对理解javascript的执行过程还是很有帮助的,代码很烂 ...

  9. Faster-rnnlm代码分析3 - EvaluateLM(前向计算ForwardPropagate)

    先采用一个简单的输入文本做测试 [root@cq01-forum-rstree01.cq01.baidu.com rnnlm]# pwd /home/users/chenghuige/rsc/app/ ...

随机推荐

  1. jumpGate部署

    preface statement: manageing OpenStack & SoftLayer resource with Jumpgate 1,forward; Imagine a w ...

  2. SQLServer 循环1百万插入测试数据

    1,首先创建student表 create table student ( sno int primary key , sname VARCHAR(200) ) 2,--向数据库中插入100万条随机姓 ...

  3. CharacterController 角色控制器实现移动和跳跃

    之前我使用SimpleMove来控制角色的移动, 后来又想实现人物的跳跃, 看见圣典里面是使用Move来实现的. =.= 然后我都把他们改成move来实现了 代码实现: using UnityEngi ...

  4. Spark常用函数讲解之Action操作

    摘要: RDD:弹性分布式数据集,是一种特殊集合 ‚ 支持多种来源 ‚ 有容错机制 ‚ 可以被缓存 ‚ 支持并行操作,一个RDD代表一个分区里的数据集RDD有两种操作算子:         Trans ...

  5. Linux命令之nano -

    我使用过的Linux命令之nano - 比vi简单易用的文本编辑器 本文链接:http://codingstandards.iteye.com/blog/802593   (转载请注明出处) 用途说明 ...

  6. HTTP协议2之基本认证--转

    http协议是无状态的, 浏览器和web服务器之间可以通过cookie来身份识别. 桌面应用程序(比如新浪桌面客户端)跟Web服务器之间是如何身份识别呢? 什么是HTTP基本认证 桌面应用程序也通过H ...

  7. border-radius实例1

    简单参数设置一 1.html <div class="paddingBig"> <div class="divSmall radiusOne" ...

  8. JAVA加密

    [源地址http://www.iteye.com/topic/1122076/] 加密,是以某种特殊的算法改变原有的信息数据,使得未授权的用户即使获得了已加密的信息,但因不知解密的方法,仍然无法了解信 ...

  9. IOS自适应库---- Masonry的使用

    Masonry是一个轻量级的布局框架,拥有自己的描述语法,采用更优雅的链式语法封装自动布局,简洁明了并具有高可读性,而且同时支持 iOS 和 Max OS X.Masonry是一个用代码写iOS或OS ...

  10. IOS开发几何类方法 CGGeometry.h文件

    CGGeometry.h文件是用C语言实现的一个封装了许多常用几何方法的文件. 一.几个常用结构体 struct CGPoint { CGFloat x; CGFloat y; }; 定义一个点,设置 ...