AT_njpc2017_c.ハードル走
通过率:0%
AC君温馨提醒
该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
在数轴上放置了 N 个栏杆。第 i 个栏杆的位置为 xi,其中 xi 是正整数,并且满足 x1<x2<⋯<xN。
你是一名跨栏选手。你从数轴原点出发,以恒定速度向正方向奔跑,途中不能改变前进方向。你可以在任意位置(不必是整数坐标)起跳。每次起跳后,你会在空中移动 L 米,然后着陆。但跳跃会消耗体力,因此每次着陆后,在接下来的 L 米内你不能再次起跳,必须在地面上奔跑。最开始你在地面上。
你能否在不碰到任何栏杆的情况下,跨越所有栏杆?
注意,跨越位置 x 的栏杆,指的是你在 x 处处于空中。此外,起跳和着陆时你都在地面上,因此不能在有栏杆的位置起跳或着陆。你可以在原点起跳。
输入格式
输入通过标准输入给出,格式如下:
N L x1 x2 … xN
输出格式
如果可以在不碰到任何栏杆的情况下跨越所有栏杆,输出 "YES"(不带引号);否则输出 "NO"。
输入输出样例
输入#1
3 4 3 5 13
输出#1
YES
输入#2
5 3 1 2 5 7 9
输出#2
NO
输入#3
5 6 1 2 3 4 5
输出#3
YES
输入#4
3 5 1 3 10
输出#4
NO
输入#5
4 4 2 3 9 15
输出#5
NO
输入#6
4 1 1 3 5 7
输出#6
YES
输入#7
4 6100991 199010 199110 6300101 9231211
输出#7
NO
说明/提示
限制
- 所有输入均为整数。
- 1≤N≤105
- 1≤L≤109
- 1≤x1<x2<⋯<xN≤109
部分分
对于 400 分的测试点,满足以下所有条件:
- 1≤N≤2000
- 1≤L≤2000
- 1≤x1<x2<⋯<xN≤2000
样例解释 1

图1:输入样例1的跳跃方式示意。图中红线表示栏杆,蓝线表示一种可以跨越所有栏杆的前进方式。在这种方式下,首先在 0≤x≤1.2 区间地面奔跑,然后在 x=1.2 处起跳,于 1.2<x<5.2 区间空中前进。由于跳跃影响,5.2≤x≤9.2 区间必须在地面奔跑。之后在 x=11 处起跳,就可以跨越所有栏杆。本例满足部分分限制。
样例解释 2
无论如何起跳,都无法跨越 x=5 处的栏杆。本例满足部分分限制。
样例解释 3
例如在原点起跳,可以跨越所有栏杆。本例满足部分分限制。
样例解释 4
不能从原点向负方向移动。本例满足部分分限制。
样例解释 5
本例满足部分分限制。
样例解释 6
本例满足部分分限制。
由 ChatGPT 4.1 翻译
输入解题思路,AI测评打分。不知道怎么写?