欢迎来到起遇信息学
起遇信息学正处于上线筹建阶段,以下功能已全部开放免费体验: ✅ 完整题库浏览与代码提交评测(C / C++ / Python / Java 等) ✅ 入门到进阶的系列课程试读、作业与考试 ✅ AI 提示、AI 作业分析等智能助教功能 ✅ 赛事模拟与个人能力报告 ✅ 邮箱注册开放 ⏳ 付费课程订阅与微信/支付宝支付通道 ⏳ 手机号登录,微信扫码登录、微信公众号绑定 使用中如遇任何问题,欢迎通过页面底部 **"联系我们"** 与我们沟通。
CF2126C.I Will Definitely Make It
I Will Definitely Make It
题目描述
有 座塔,编号从 到 。第 座塔的高度为 。在时间 时,你位于编号为 的塔上,此时水位为 。
每秒水位上升 单位。任何时刻,如果你所在塔的高度严格小于当前水位,你就会被淹没。
你有一种魔法能力:在时刻 ,你可以开始从第 座塔传送到第 座塔,传送需要花费 秒。也就是说,在 时刻之前,你都停留在第 座塔上,到 时刻你会到达第 座塔。你可以在刚到达第 座塔的同一时刻再次开始新的传送。
例如,如果 ,,那么如果你在时刻 从第 座塔开始传送到第 座塔,移动过程如下图所示:

注意,如果第 座塔的高度是 ,你就无法立即传送到它,因为在时刻 你就会被淹没。
你的目标是在被水淹没之前,抵达任意一座最高的塔。
请判断是否可以做到。
输入格式
每组测试数据包含若干组测试用例。第一行包含一个整数 (),表示测试用例的组数。接下来是每组测试用例的描述。
每组测试用例的第一行包含两个整数 和 (),分别表示塔的数量和你初始所在塔的编号。
第二行包含 个整数 (),表示每座塔的高度。
保证所有测试用例中 的总和不超过 。
输出格式
对于每组测试用例,输出一行,如果你能在被水淹没前到达最高的塔,输出 "YES";否则输出 "NO"。
你可以用任意大小写输出答案(如 "yEs"、"yes"、"Yes"、"YES" 都是正确的)。
说明/提示
在第一个测试用例中,唯一可行的路径为:$3 \rightarrow 2 \rightarrow 1 \rightarrow 4 \rightarrow 5$。
在第二个测试用例中,无论顺序如何,都无法到达最高的塔。
在第三个测试用例中,其中一种可行路径为:。
由 ChatGPT 4.1 翻译
样例
5
5 3
3 2 1 4 5
3 1
1 3 4
4 4
4 4 4 2
6 2
2 3 6 9 1 2
4 2
1 2 5 6
YES
NO
YES
YES
NO
在线编程 IDE
建议全屏模式获得最佳体验
| 进入全屏编程 | Alt+E |
| 递交评测 | Ctrl+Enter |
| 注释/取消注释 | Ctrl+/ |
| 缩放字体 | Ctrl+滚轮 |