#P16512. [GKS 2015 #C] gGames

[GKS 2015 #C] gGames

题目描述

精灵国计划举办一场淘汰赛,共有 2N2^N 名精灵想要参加。比赛开始时,他们会被分配从 112N2^N 的唯一 ID 编号,并由精灵总统将他们排成某一列。

比赛由多场两名精灵之间的对决组成,每场比赛都会决出一名胜者和一名败者(没有平局)。在第一轮中,队列中第一名精灵与第二名精灵对决,第三名与第四名对决,以此类推。第一轮结束后,输掉的 2N12^{N-1} 名精灵离开队列,获胜的 2N12^{N-1} 名精灵留在原位。然后,剩下的精灵以同样的方式进行第二轮:队列中剩下的第一名精灵与第二名对决,第三名与第四名对决,以此类推。经过 NN 轮之后,将只剩下一名精灵,该精灵即为冠军。

其中 MM 名精灵是敏感的,这意味着如果他们必须在最初的 KiK_i 轮中与自己的朋友对决,他们就会非常难过。(注意,朋友关系不一定是相互的:如果一名精灵认为另一名精灵是朋友,另一名精灵不一定也认为这名精灵是朋友。)

精灵总统想知道:是否存在一种指定所有 2N2^N 名精灵初始位置的方式,能够保证无论比赛过程中发生什么,都不会有精灵难过?

输入格式

输入的第一行给出测试用例的数量 TT。接下来是 TT 个测试用例。每个测试用例包含一行,给出两个整数 NNMM,接着是 MM 组信息,每组包含两行,其中第一行包含一名精灵的整数 EiE_iKiK_iBiB_i,第二行包含该精灵的 BiB_i 个朋友的 ID 编号(整数)。

输出格式

对于每个测试用例,输出一行内容为 "Case #x: ",其中 x 是测试用例编号(从 1 开始),后面跟着 YES 或 NO。

3
1 1
1 1 1
2
2 2
1 1 1
2
3 1 1
4
3 3
1 2 2
3 4
2 2 2
5 6
7 1 1
8
Case #1: NO
Case #2: YES
Case #3: YES

提示

限制

1T2001 \le T \le 200

0M2N0 \le M \le 2^N

1Ei2N1 \le E_i \le 2^N

1KiN1 \le K_i \le N

Msum(Bi)min(2×M,2N)M \le \text{sum}(B_i) \le \min(2 \times M, 2^N)

小数据集(测试集 1 - 可见)

1N31 \le N \le 3

大数据集(测试集 2 - 隐藏)

N=4N = 4

翻译由 DeepSeek V4 Pro 完成