P15088 [UOI 2025 II Stage] Digital Game

题目描述

哥萨克人 Vus 和哥萨克人 Us 正在一个长度为 $n$、由数字 $0$-$9$ 组成的字符串 $s$ 上玩游戏。 玩家轮流行动(Vus 先手),从字符串 $s$ 中移除任意一个数字。如果在任意时刻字符串中存在两个相邻且相同的数字,则 Us 获胜。如果所有数字都被移除而 Us 尚未获胜,则 Vus 获胜。 哥萨克人 Vus 非常没耐心,甚至想在游戏开始前就知道,在双方都采取最优策略(始终以获胜为目标)的情况下,他是否能战胜 Us。他请你帮他找出答案。

输入格式

- 第一行包含 $t$($1\leq t \leq 10$)——表示子测试用例的数量。 - 每个测试用例: - 第一行包含一个整数 $n$($1\leq n \leq 10^6$)。 - 第二行包含一个长度为 $n$ 的字符串 $s$,仅由数字 $0$-$9$ 组成。 保证所有子测试用例的 $n$ 之和不超过 $10^6$。

输出格式

对于每个测试用例,输出一行:如果哥萨克人 Vus 能获胜,输出 `Yes`;否则输出 `No`。

说明/提示

在第一个示例中,永远不会出现两个相邻的相同数字,因为每个数字最多出现一次。 在第二个示例中,Vus 可以先取走最后一个 $2$。然后,如果 Us 取 $1$ 或 $2$,Vus 就分别取 $2$ 或 $1$,之后所有数字都互不相同,因此 Vus 将获胜。但如果 Us 取 $3$ 或 $5$,那么 Vus 会先取任意一个 $2$,然后取任意一个 $1$。 在第三个示例中,Us 甚至在游戏开始前就已经获胜了。 ### 评分细则 - ($8$ 分):不同数字的数量 $\leq 2$; - ($8$ 分):不同数字的数量 $\leq 5$; - ($6$ 分):不同数字的数量 $\leq 7$; - ($8$ 分):只有一个数字出现超过一次; - ($7$ 分):如果 $s_l=s_r, s_i=s_j$ 且 $s_i \neq s_l$($l\neq r; i\neq j$),则区间 $[l, r]$ 和 $[i, j]$ 不重叠; - ($7$ 分):$n \leq 4$; - ($6$ 分):$n \leq 8$; - ($6$ 分):$n \leq 12$; - ($6$ 分):$n \leq 15$; - ($38$ 分):无额外限制。 翻译由 DeepSeek V3 完成