#P14102. [ZJCPC 2017] What Kind of Friends Are You?

[ZJCPC 2017] What Kind of Friends Are You?

Description

Japari Park 是一个大型动物园,园内居住着现存物种、濒危物种、已灭绝物种、神秘生物以及一些传说中的生物。由于一种名为 Sandstar\textit{Sandstar} 的神秘物质,所有动物都化身为被称作 Friends\textit{Friends} 的拟人化少女。

Kaban 是一位年幼的少女,她在 Japari Park 醒来,却对自己是谁、从哪里来毫无记忆。虽然性格腼腆但十分机智,她与 Serval 一同游历 Japari Park,途中不断结识新的 Friends\textit{Friends},并最终发现自己其实是人类。

然而,Kaban 也发现辨认其他 Friends\textit{Friends} 同样十分重要。她的朋友 Serval 告诉 Kaban,可以通过一系列答案可能为“yes”或“no”的问题来辨认某一种 Friend\textit{Friend}

更具体地说,有 nn 个需要辨认的 Friends\textit{Friends}。Kaban 会向她们每人提出相同的 qq 个问题,并收集她们的答案。对于每个问题,她还能获得完整名单:哪几个动物会对该问题回答“yes”(名单以外的动物则回答“no”)。因此,只要结合答案与名单,就有可能确定某个 Friend\textit{Friend} 的名字。

但这一工作量对 Kaban 来说太大了。你能帮她完成吗?

Input Format

输入包含多组测试数据。第一行为整数 TT1T1001 \le T \le 100),表示测试数据组数。接下来是 TT 组测试数据。

每组测试数据的第一行为两个整数 nn1n1001 \le n \le 100)和 qq1q211 \le q \le 21),分别表示需要辨认的 Friends\textit{Friends} 数量和问题数量。

下一行包含一个整数 cc1c2001 \le c \le 200)以及 cc 个字符串 p1,p2,,pcp_1, p_2, \dots, p_c1pi201 \le |p_i| \le 20),表示所有已知的 Friends\textit{Friends} 名字。

接下来的 qq 行,每行第一个整数 mim_i0mic0 \le m_i \le c),后跟 mim_i 个字符串 si,1,si,2,,si,mis_{i,1}, s_{i,2}, \dots, s_{i,m_i}1si,j201 \le |s_{i,j}| \le 20),表示第 ii 个问题中,会回答“yes”的 Friends\textit{Friends} 的数量及她们的名字。保证这些名字都出现在已知的名字列表中。

再之后的 nn 行,每行包含 qq 个整数 ai,1,ai,2,,ai,qa_{i,1}, a_{i,2}, \dots, a_{i,q}0ai,j10 \le a_{i,j} \le 1),表示第 ii 个需要辨认的 Friend\textit{Friend} 对于每个问题的回答(00 表示“no”,11 表示“yes”)。

保证所有输入中的名字仅包含大小写英文字母。

Output Format

对于每组测试数据,输出 nn 行。如果 Kaban 能确定第 ii 个待辨认 Friend\textit{Friend} 的名字,则在第 ii 行输出该名字。否则输出 “Let's go to the library!!”。

2
3 4
5 Serval Raccoon Fennec Alpaca Moose
4 Serval Raccoon Alpaca Moose
1 Serval
1 Fennec
1 Serval
1 1 0 1
0 0 0 0
1 0 0 0
5 5
11 A B C D E F G H I J K
3 A B K
4 A B D E
5 A B K D E
10 A B K D E F G H I J
4 B D E K
0 0 1 1 1
1 0 1 0 1
1 1 1 1 1
0 0 1 0 1
1 0 1 1 1
Serval
Let's go to the library!!
Let's go to the library!!
Let's go to the library!!
Let's go to the library!!
B
Let's go to the library!!
K

Hint

第一个样例说明如下:

由于只有 Serval 会对第 112244 个问题回答“yes”,对第 33 个问题回答“no”,所以我们在第一行输出 “Serval”。

由于没有动物全部问题都回答“no”,因此第二行输出 “Let's go to the library!!”。

Alpaca 与 Moose 都会对第 11 个问题回答“yes”,其余问题都回答“no”,所以无法确定他们各自的身份,因此在第三行输出 “Let's go to the library!!”。

由 ChatGPT 5 翻译