【问题描述】

采药人虽然 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. matplotlib 直方图

    一.特点 数据必须是原始数据不能经过处理,数据连续型,显示一组或多组分布数据 histogram 直方图 normed 定额 二.核心 hist(x, bins=None, normed=None) ...

  2. colab上基于tensorflow2.0的BERT中文多分类

    bert模型在tensorflow1.x版本时,也是先发布的命令行版本,随后又发布了bert-tensorflow包,本质上就是把相关bert实现封装起来了. tensorflow2.0刚刚在2019 ...

  3. 「 从0到1学习微服务SpringCloud 」12 Zuul的综合使用

    上次讲了Zuul的基本使用,这篇讲的是综合使用,比如过滤器,限流,鉴权等应用 这里继续使用api-getway这个项目 过滤器 实现token验证(前置过滤器) 1.新建一个类,继承ZuulFilte ...

  4. 19_08_26校内训练[Max]

    题意 求$max_{l \leq r}{\{min{\{a_l,a_{l+1},...,a_r\}}*(r-l+1)\}}$ 思考 分治,考虑一个区间跨过某个点的贡献即可. 代码 #include&l ...

  5. divide and conquer - 最大连续子序列 - py

    以HDU1231为例,代码之没法交如下: inf = 0x3f3f3f3f a = [0 for i in range(10005)] ans, L, R = -inf, 0, 0 def divid ...

  6. Dwz/Jquery--使用Ajax提交表单时调用表单设置的校验

    案例 今天有一个需求就是点击按钮时,使用ajax方式提交表单,而且不是直接用form表单下的submit按钮提交,表单中用的校验是dwz 自带的校验方式,表单模板如下: <li><d ...

  7. Web 开发工具类(3): JsonUtils

    JsonUtils 整合了一些对Json的相关操作: package com.evan.common.utils; import java.util.List; import com.fasterxm ...

  8. 那些 JavaScript 自带的奇妙 Bug

    米娜桑,哦哈哟~ 本章讲解关于 JavaScript 奇妙的 Bug,与其说是Bug,不如说是语言本身隐藏的奥秘.接下来就看看可能会影响到我们编程的那些Bug吧. typeof null === &q ...

  9. 理解numpy中ndarray的内存布局和设计哲学

    目录 ndarray是什么 ndarray的设计哲学 ndarray的内存布局 为什么可以这样设计 小结 参考 博客:博客园 | CSDN | blog 本文的主要目的在于理解numpy.ndarra ...

  10. 在VMware中如何清理多余的空间

    问题描述 平时用的编程计算机只有250G空间,c盘和d盘,今天准备做实验,发现删除虚拟机中系统的内容不但没有减少空间,反而增加了,这时我意识到虚拟机内部可能与咱们想象的操作模式不一样. 解决办法 我的 ...