【问题描述】

采药人虽然 AFO(SU),但他在闲暇的时候还是可以玩一玩接水果(cat)的。但他渐渐发现 cat 好像有点太弱智。于是他不想浪费他的智商,于是决定写一个程序帮他玩。

cat 是这样玩的,开始时没有水果,采药人可以自己选择他所在的位置。接下来每隔 \(1\) 秒会有一个水果落到地上,而且第 \(i\) 秒落下的水果落到 \(x_i\) 这个位置,得分为 \(1\)。而采药人每秒只能移动一单位长度,但他不需要担心到了水果落下的位置还接不到水果,而且接水果不需要时间。采药人当然希望自己的分数越高越好。

采药人觉得写这个程序也太简单了,并且得分过低,于是他写了个挂,将接水果的一个人变成了两个人。但他却突然不想写 auto 程序了?这时转头看见了正在拼命切题的你,于是毫不犹豫地把这个问题交给了你。

【输入格式】

第 \(1\) 行:一个正整数 \(n\),游戏时间有 \(n\) 秒

接下来 \(n\) 行:第 \(i+1\) 行,一个正整数 \(x_i\)

【输出格式】

共 \(1\) 行:最大得分

【数据范围】

对于 \(30\%\) 的数据,\(n\leqslant100\)

对于 \(60\%\) 的数据,\(n\leqslant1000\)

对于 \(80\%\) 的数据,\(n\leqslant10000\)

对于 \(100\%\) 的数据,\(n\leqslant500000\), \(x_i\leqslant50000\)


Solution

考虑用二元组 \((x,y)\) 来表示一个水果,其含义为 (出现时间, 出现位置)。
假设我们已经拿了第 \(a\) 个水果,接下来要去拿第 \(b\) 个水果,则需要满足的条件为:
\[
|b_y-a_y|\leqslant b_x-a_x
\]
\[
a_x-b_x\leqslant a_y-b_y\leqslant b_x-a_x
\]
\[
\begin{cases}
a_x+a_y\leqslant b_x+b_y\\
a_x-a_y\leqslant b_x-b_y
\end{cases}
\]
发现是个二维偏序的关系,由于有两个人接,求最长 \(2\) 不相交子序列即可。

【题解】 2月19日 厦门双十中学NOIP2014模拟D2 T2 采药人接水果的更多相关文章

  1. 【题解】 2月19日 厦门双十中学NOIP2014模拟D2 T1 采药人的切题规则

    Made by 退役的OIer 第一次写博客,写得不好 or 不清楚的可以 在下方留言,我会尽量改进的! 好啦~~~回到正题,题面见传送门 [问题描述] 采药人最近在认真切题,但回旋的转盘时常在眼前浮 ...

  2. 【Usaco 2009 Gold】JZOJ2020年9月19日提高B组T4 过路费

    [Usaco 2009 Gold]JZOJ2020年9月19日提高B组T4 过路费 题目 Description 跟所有人一样,农夫约翰以着宁教我负天下牛,休叫天下牛负我的伟大精神,日日夜夜苦思生财之 ...

  3. 【Usaco 2009 Gold】JZOJ2020年9月19日提高B组T3 头晕的奶牛

    [Usaco 2009 Gold]JZOJ2020年9月19日提高B组T3 头晕的奶牛 题目 Description 奶牛们发现,在农场里面赛跑是很有趣的一件事.可是她们一旦在农场里面不断地转圈,就会 ...

  4. 【Usaco 2009 Gold 】JZOJ2020年9月19日提高B组T2 电视游戏问题

    [Usaco 2009 Gold ]JZOJ2020年9月19日提高B组T2 电视游戏问题 题目 Description 农夫约翰的奶牛们游戏成瘾!本来FJ是想要按照陶叫兽的做法拿她们去电击戒瘾的,可 ...

  5. 【Usaco 2009 Silver】JZOJ2020年9月19日提高B组T1 音乐节拍

    [Usaco 2009 Silver]JZOJ2020年9月19日提高B组T1 音乐节拍 题目 Description FJ准备教他的奶牛弹奏一首歌曲,歌曲由N(1<=N<=50,000) ...

  6. Python array,list,dataframe索引切片操作 2016年07月19日——智浪文档

    array,list,dataframe索引切片操作 2016年07月19日——智浪文档 list,一维,二维array,datafrme,loc.iloc.ix的简单探讨 Numpy数组的索引和切片 ...

  7. 2016年12月19日 星期一 --出埃及记 Exodus 21:14

    2016年12月19日 星期一 --出埃及记 Exodus 21:14 But if a man schemes and kills another man deliberately, take hi ...

  8. 2016年11月19日 星期六 --出埃及记 Exodus 20:10

    2016年11月19日 星期六 --出埃及记 Exodus 20:10 but the seventh day is a Sabbath to the LORD your God. On it you ...

  9. 2016年10月19日 星期三 --出埃及记 Exodus 19:3

    2016年10月19日 星期三 --出埃及记 Exodus 19:3 Then Moses went up to God, and the LORD called to him from the mo ...

随机推荐

  1. cors中间件

    class MiddlewareMixin(object): def __init__(self, get_response=None): self.get_response = get_respon ...

  2. [bzoj1045] [洛谷P2512] [HAOI2008] 糖果传递

    Description 有n个小朋友坐成一圈,每人有ai个糖果.每人只能给左右两人传递糖果.每人每次传递一个糖果代价为1. Input 第一行一个正整数nn<=1'000'000,表示小朋友的个 ...

  3. 【WPF学习】第十七章 键盘输入

    当用户按下键盘上的一个键时,就会发生一系列事件.下表根据他们的发生顺序列出了这些事件: 表 所有元素的键盘事件(按顺序) 键盘处理永远不会像上面看到的这么简单.一些控件可能会挂起这些事件中的某些事件, ...

  4. python笔记05

    python笔记05 数据类型 上个笔记知识点总结: 列表中extend特性:extend,(内部循环,将另外一个列表,字符串.元组添加到extend前的列表中) li.extend(s),将s中元素 ...

  5. selenium-第一个自动化脚本

    经过上一篇的环境搭建,这一篇我们开始编写第一个自动化脚本. 一个简单的测试百度的demo #coding=utf-8 from selenium import webdriver driver = w ...

  6. Python3.6在win7中无法正常运行的问题

    Python3.6在启动时报缺少api-ms-win-crt-runtime-l1-1-0.dll解决靠谱方法:1.到正常的机器,或者就在开发环境,去搜索api-ms-win-crt-runtime- ...

  7. 解题笔记——NIT 遥远的村庄

    某个小镇有 N 个村庄,村庄编号1-N,给出 M 条单向道路,不存在环,即不存在 村庄A可以到达村庄B 且 村庄B也可以到达村庄A的情况.如果村庄A与村庄B之间存在一条单向道路,则说村庄A和村庄B之间 ...

  8. 痞子衡嵌入式:嵌入式里堆栈原理及其纯C实现

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家讲的是嵌入式里堆栈原理及其纯C实现. 今天给大家分享的这篇还是2016年之前痞子衡写的技术文档,花了点时间重新编排了一下格式.栈这种结构在嵌入式 ...

  9. Java基于OpenCV实现走迷宫(图片+路线展示)

    Java基于OpenCV实现走迷宫(图片+路线展示) 由于疫情,待在家中,太过无聊.同学发了我张迷宫图片,让我走迷宫来缓解暴躁,于是乎就码了一个程序出来.特此记录. 原图: 这张图,由于不是非常清晰, ...

  10. Docker基础内容之镜像

    概念 镜像是一个包含程序运行必要依赖环境和代码的只读文件,它采用分层的文件系统,将每一次改变以读写层的形式增加到原来的只读文件上.镜像是容器运行的基石. 下图展示的是Docker镜像的系统结构.其中, ...