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. Only2 Labs — A Visual Design Studio

    Only2 Labs - A Visual Design Studio 设计合作 对您目前的设计很不满意?或是急缺一个设计供应商?您的团队最近做的项目需要指导?Only2都很乐意为您解困惑. 或者,你 ...

  2. [置顶] Android学习系列-把文件保存到SD卡上面(6)

    Android学习系列-把文件保存到SD卡上面(5) 一般多媒体文件,大文件需要保存到SD卡中.关键点如下: 1,SD卡保存目录:mnt/sdcard,一般采用Environment.getExter ...

  3. linux使用mysql的命令

    1.连接到mysql服务器的命令 mysql -h 服务器主机地址 -u 用户名 -p 用户密码 例:mysql -h 192.168.1.1 -u root -p   //指定服务器的主机地址和用户 ...

  4. shell中eval命令妙用——变量嵌套替换

    eval命令妙用--变量嵌套替换 eval命令在Linux下的应用非常广泛,在写脚本的时候遇到一个变量嵌套的问题,用eval迎刃而解,略试不爽啊. var1="hello" i=1 ...

  5. IO之流程与buffer概览

    为了说明这个流程,还是用图来描述一下比较直观. 中间过程请参考 <IO之内核buffer----"buffer cache"> <IO之标准C库buffer> ...

  6. C# 使用枚举获取对应的数组值时

    using System; enum Move { walk, run } class Program { static float[] speedAry = { 50.0f, 200.0f }; p ...

  7. MVVM 介绍

    我会修改一个关键架构,并将其带入我从那时起就在开发的各种应用,即使用一种叫做 Model-View-ViewModel 的架构替换 Model-View-Controller. 所以,MVVM 到底是 ...

  8. Maven中pom.xml常用元素说明

    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/20 ...

  9. [ES7] Object.observe + Microtasks

    ES6: If you know about the Javascirpt's event loop. You know that any asyns opreations will be throw ...

  10. Codeforces 474C Captain Marmot 给定4个点和各自旋转中心 问旋转成正方形的次数

    题目链接:点击打开链接 题意: 给定T表示case数 以下4行是一个case 每行2个点,u v 每次u能够绕着v逆时针转90° 问最少操作多少次使得4个u构成一个正方形. 思路: 枚举判可行 #in ...