CF2220B.OIE Excursion
普及-
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
Hector 正与西班牙信息学奥林匹克代表队一起在拉科鲁尼亚远足,但他非常想溜出去见他的朋友们 Gustavo、Esomer 和 Dani。为此,他需要穿过一条由 n 个志愿者看守的道路,志愿者们站成一排,编号为 1 到 n;第 i 位志愿者负责看守位置 i。
每个志愿者都有一个内部计时器。最初(第 0 秒),第 i 位志愿者的计时器值为 ai。每秒,所有计时器增加 1。一旦计时器达到 m,它会绕回到 0。具体来说,在第 x 秒,第 i 位志愿者的计时器显示值为 (ai+x)(modm)。
第 i 位志愿者只有在他们的计时器恰好为 0 时,才会看守位置 i。其他时间他们都会分心,不会注意到 Hector。
Hector 从位置 0 开始,在所有志愿者的左侧。为了逃脱,他需要到达位置 n+1。每秒结束时,Hector 可以选择停留在当前所在位置,向左移动一个位置,或者向右移动一个位置。注意,Hector 不能移动到位置 0 的左侧。
当且仅当在某一秒开始时,Hector 位于位置 i(1≤i≤n),且第 i 位志愿者的计时器为 0 时,Hector 才会被抓住。
判断是否存在一种策略,使 Hector 能够在不被抓住的情况下穿过所有志愿者并逃脱。
输入格式
每个测试点包含多个测试用例。第一行包含测试用例的数量 t(1≤t≤104)。接下来是每个测试用例的描述。
每个测试用例由两行组成:
第一行包含两个整数 n 和 m(2≤n≤2⋅105,2≤m≤109)——志愿者的数量以及计时器的周期长度。
第二行包含 n 个整数 a1,a2,…,an(0≤ai<m),其中 ai 表示第 i 位志愿者在 t=0 时的计时器初始值。
保证所有测试用例的 n 之和不超过 2⋅105。
输出格式
对于每个测试用例,输出一行,包含 "YES" 或 "NO",表示 Hector 能否逃脱。你可以以任意大小写输出答案(大小写均可)。例如,"yEs"、"yes"、"Yes" 和 "YES" 都会被识别为肯定回答。
输入输出样例
输入#1
6 8 5 0 4 0 2 1 0 0 3 6 2 1 0 1 0 1 0 6 2 1 1 1 1 0 1 2 10 6 9 2 2 0 1 5 1000000000 1 2 3 4 999999999
输出#1
YES YES NO YES YES YES
说明/提示
-
样例 1:Hector 可以每秒向右移动,无需等待或向左移动就能逃脱,因为不存在 i 使得 (ai+i)(modm)=0。
-
样例 2:一种可能的策略是先在起始位置等待 1 秒,然后每秒向右移动,无需进一步等待或向左移动。
翻译有deepseek v3.2完成
输入解题思路,AI测评打分。不知道怎么写?