编程题
### 问题描述 诺伊与星迪正在玩一个字符串游戏。游戏开始时,他们有一个共享的字符串 $S$,长度为 $N$。诺伊和星迪各自有一个初始为空的字符串,分别记作 $A$ 和 $B$。游戏由诺伊开始,然后他们交替进行。 在每一轮中,玩家从字符串 $S$ 中选取一个字符,添加到其个人字符串的末尾,同时从 $S$ 中删除选取的字符。 游戏一直进行,直到字符串 $S$ 变为空。你的任务是找出是否存在一种操作序列,使得游戏结束时,诺伊和星迪的字符串 $A$ 和 $B$ 相同。 ### 输入格式 输入的第一行包含一个整数 $T$,表示测试用例的数量。 每个测试用例包含两行: - 第一行包含一个整数 $N$,表示字符串 $S$ 的长度。 - 第二行包含一个由小写英文字母组成的字符串 $S$。 数据范围保证: - $1 \leq T \leq 10^3$。 - $1 \leq N \leq 10^5$。 - $S$ 由小写英文字母组成。 - 所有测试用例的 $N$ 之和不超过 $2 \times 10^5$。 ### 输出格式 对于每个测试用例,如果存在一种操作序列使得游戏结束时,诺伊和星迪的字符串 $A$ 和 $B$ 相同,输出 "YES";否则,输出 "NO"。 ### 样例输入 ```text 4 4 abab 5 cbcba 4 abcd 6 pqprqr ``` ### 样例输出 ```text YES NO NO YES ``` ### 说明 第一个测试用例:诺伊从 $S$ 中选取第 $1$ 个字符 "a",添加到 $A$ 的末尾,然后删除 $S$ 中的 "a"。然后星迪从 $S$ 中选取第 $2$ 个字符 "b",添加到 $B$ 的末尾,删除 $S$ 中的 "b"。接着,诺伊和星迪分别选择 $S$ 中的 "b" 和 "a"。这样,游戏结束时,$A$ 和 $B$ 都是 "ab"。
查看答案
赣ICP备20007335号-2