CF2217A The Equalizer

题目描述

为了化解长时间的争端,Shaunak 和 Yash 决定在一个长度为 $n$ 的整数数组 $a$ 上进行一场游戏,Shaunak 先手。两人轮流操作,最后一个完成操作的玩家获胜。在每一回合,玩家可以选择某一个 $a_i > 0$,并将其减 $1$。 为了让游戏更有趣,Shaunak 被允许在整个游戏过程中最多使用一次特殊操作。这次操作会替代他正常的回合。当使用时,将所有元素 $a_i$($1 \leq i \leq n$)设为最初给定的一个特殊值 $k$。 假设两位玩家都采取最优策略,判断 Shaunak 是否总能获胜。

输入格式

每个测试点包含多组测试数据。第一行输入测试用例数量 $t$($1 \le t \le 500$)。每组测试数据描述如下: 每个测试数据的第一行包含两个整数 $n$ 和 $k$($1 \leq n \leq 100$,$1 \leq k \leq 500$),分别表示数组的长度和特殊值。 第二行包含 $n$ 个整数 $a_1,a_2,\ldots,a_n$($1 \leq a_i \leq 10^3$)。

输出格式

对于每组测试数据,如果 Shaunak 能始终获胜,输出 "YES";否则输出 "NO"。 输出不区分大小写,例如 "yEs"、"yes"、"Yes" 或 "YES" 都表示肯定回答。

说明/提示

在第三组测试数据中,$n = 3$,$k = 2$,初始数组为 $[3, 3, 3]$。可能的游戏过程如下: - Shaunak 对 $a_3$ 执行减一操作。数组变为 $[3, 3, 2]$。 - Yash 对 $a_3$ 执行减一操作。数组变为 $[3, 3, 1]$。 - Shaunak 使用特殊操作。数组变为 $[2, 2, 2]$。 - Yash 对 $a_1$ 执行减一操作。数组变为 $[1, 2, 2]$。 - Shaunak 对 $a_2$ 执行减一操作。数组变为 $[1, 1, 2]$。 - Yash 对 $a_3$ 执行减一操作。数组变为 $[1, 1, 1]$。 - Shaunak 对 $a_1$ 执行减一操作。数组变为 $[0, 1, 1]$。 - Yash 对 $a_3$ 执行减一操作。数组变为 $[0, 1, 0]$。 - Shaunak 对 $a_2$ 执行减一操作。数组变为 $[0, 0, 0]$。 由于数组中没有 $a_i > 0$,Yash 无法再进行操作,Shaunak 获胜。 由 ChatGPT 5 翻译