UESTC_One Step Two Steps CDOJ 1027
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 |
Yes |
解题报告
令 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的更多相关文章
- [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 ...
- animation中的steps()逐帧动画
在我们平时做宽高确定,需要背景图片切换的效果时,我如果用的是一张大的png图片.而且恰好是所有小图都是从左向右排列的,那么 我们只需测量出某一个小图距左侧有多少像素(x),然后我们banckgroun ...
- AWS Step Function Serverless Applications
Installing VS Components To follow along with this article, you must have an AWS account and install ...
- Steps 组件的设计与实现
NutUI 组件源码揭秘 前言 本文的主题是 Steps 组件的设计与实现.Steps 组件是 Steps 步骤和 Timeline 组件结合的组件,在此之前他们是两个不同的组件,在 NutUI 最近 ...
- [LeetCode] Climbing Stairs 爬梯子问题
You are climbing a stair case. It takes n steps to reach to the top. Each time you can either climb ...
- jquery——移动端滚动条插件iScroll.js
官网:http://cubiq.org/iscroll-5 demo: 滚动刷新:http://cubiq.org/dropbox/iscroll4/examples/pull-to-refresh/ ...
- Model--汇总
NSFileManager.NSURL.NSFileHandle.NSData.NSXMLParser.NSUserDefaults.NSKeyedArchiver.NSKeyedUnarchiver ...
- javascript实现汉诺塔动画效果
javascript实现汉诺塔动画效果 当初以为不用html5也很简单,踩了javascript单线程的大坑后终于做出来了,没事可以研究下,对理解javascript的执行过程还是很有帮助的,代码很烂 ...
- Faster-rnnlm代码分析3 - EvaluateLM(前向计算ForwardPropagate)
先采用一个简单的输入文本做测试 [root@cq01-forum-rstree01.cq01.baidu.com rnnlm]# pwd /home/users/chenghuige/rsc/app/ ...
随机推荐
- mybatis源代码分析:mybatis延迟加载机制改进
在上一篇博客<mybatis源代码分析:深入了解mybatis延迟加载机制>讲诉了mybatis延迟加载的具体机制及实现原理. 可以看出,如果查询结果对象中有一个属性是需要延迟加载的,那整 ...
- Ubuntu 16.04 LTS 正式发布:系统将持续更新5年
Canonical 刚刚正式发布了Ubuntu 16.04 LTS (Xenial Xerus),这是一个长期支持版本,官方会提供长达5年的技术支持(包括常规更新/Bug修复/安全升级),一直到202 ...
- REST API初识及设计
网络应用程序,分为前端和后端两个部分.当前的发展趋势,就是前端设备层出不穷(手机.平板.桌面电脑.其他专用设备......). 因此,必须有一种统一的机制,方便不同的前端设备与后端进行通信.这导致AP ...
- jQuery autocomplete 使用
推荐 :http://www.cnblogs.com/Peter-Zhang/archive/2011/10/22/2221147.html eg: $("#txtGrand"). ...
- java获取指定长度随机数(版本1)
获取指定长度随机数,含大小写字母和数字 package org.sw; import java.util.Random; /** * 得到指定位数的随机数 * @author mengzw * @si ...
- mycat源码分析
http://www.cnblogs.com/fernandolee24/p/5196367.html
- 数组,集合 转成DataTable 方法
public static DataTable ToDataTable(IList p_List) { DataTable _DataTable = new DataTable(); if (p_Li ...
- Git(Repo)常用命令收集
(注意: 只记录工作中实际使用的命令) 同步android源码 repo sync:(可加-c,只取当前分支: 可加-j4,线程数量) 查看android源码下所有项目的git状态 rep ...
- Random获得的随机数怎么样减少重复率
C#中的Random在获得随机数的时,如果你想要随机循环取得100个随机数则使用如下代码会出现大量的重复数字.代码如下: using System; namespace ConsoleApplicat ...
- shell中的expr命令
expr 可以进行的操作如下: 逻辑操作 arg1 | arg2 逻辑或操作,真则返回arg1,否则返回arg2(以null或者0来判断参数的真假,有短路功能) arg1 & arg2 逻辑与 ...