#P13142. [GCJ 2018 #1C] A Whole New Word

    ID: 12963 远端评测题 15000ms 1024MiB 尝试: 0 已通过: 0 难度: 5 上传者: 标签>2018Special Judge字典树 TrieGoogle Code Jam

[GCJ 2018 #1C] A Whole New Word

Description

Vincent 和 Desta 是从小一起长大的朋友。今天,Vincent 用一些字母牌向 Desta 展示了 NN 个不同的 LL 字母单词。每个字母牌上有一个大写英文字母和一个 11LL 之间的数字。一个单词由 LL 个数字分别为 11LL 的字母牌按顺序拼成。(Vincent 的单词不一定是真正的英文单词。)

例如,如果 Vincent 有 N=3N = 3 个长度为 L=4L = 4 的单词,分别是 {CAKE,TORN,SHOW}\{\text{CAKE}, \text{TORN}, \text{SHOW}\},那么 Vincent 必须向 Desta 展示如下内容:

Desta 觉得造单词一定很简单,他想用上述规则造出一个新的单词,并且不能和 Vincent 已有的单词重复。然而,Desta 没有自己的字母牌,他只能使用 Vincent 的字母牌。

例如,如果 Vincent 的单词如上例所示,Desta 可以拼出新的单词,如 CORN\text{CORN}SAKE\text{SAKE}CHRE\text{CHRE}(Desta 造的单词也不一定是真正的英文单词)。每个例子如下图所示:

注意,上图的三行是独立的。Desta 只需要造出一个新单词即可。

但是,在上述例子中,Desta 不能拼出 WAKE,因为没有数字为 11W\text W 字母牌。也不能拼出 coo,因为长度不对。

注意,有时 Desta 可能无法造出新单词。例如,如果 Vincent 只有一个单词,那么 Desta 无法造出任何新单词。又如,如果 Vincent 的单词为 {AA,AB,BA,BB}\{\text{AA}, \text{AB}, \text{BA}, \text{BB}\},那么 Desta 能拼出的所有单词都已在 Vincent 的单词列表中。

请帮助 Desta 选择一个他能用 Vincent 的字母牌拼出的新单词,或者指出无法拼出新单词。

Input Format

输入的第一行是测试用例数 TT。接下来有 TT 组测试数据。每组测试数据的第一行包含两个整数 NNLL,分别表示 Vincent 的单词数和每个单词的长度。接下来的 NN 行,每行是一个长度为 LL 的大写英文字母字符串,表示 Vincent 的第 ii 个单词。

Output Format

对于每组测试数据,输出一行 Case #x: y,其中 xx 是测试用例编号(从 1 开始),yy 是 Desta 能拼出的一个合法新单词,或者如果无法拼出则输出一个单独的短横线 -(ASCII 码 45)。如果有多个合法答案,可以输出任意一个。

5
4 1
A
B
C
D
4 2
WW
AA
SS
DD
4 2
AA
AB
BA
BB
3 4
CAKE
TORN
SHOW
5 7
HELPIAM
TRAPPED
INSIDEA
CODEJAM
FACTORY
Case #1: -
Case #2: WA
Case #3: -
Case #4: CORN
Case #5: HOLIDAY

Hint

样例解释

注意,最后两个样例不会出现在测试集 1 中。

样例 1 中,只能用 Vincent 的字母牌拼出 A、B、C、D 这四个单词,但这些单词都已在 Vincent 的单词列表中,所以 Desta 不能选择它们。

样例 2 中,有 1212 个可能的新单词可以拼出,其中之一是 WA\text{WA}

样例 3 已在题目描述中解释,Desta 无法拼出新单词。

样例 4 已在题目描述中解释,也可以输出如 SAKF\text{SAKF} 等其它答案。

样例 5 也可以输出如 TRAPJAM\text{TRAPJAM} 等其它答案。

数据范围

  • 1T1001 \leqslant T \leqslant 100
  • Vincent 的单词互不相同。

测试集 1(11 分,可见)

  • 1N2621 \leqslant N \leqslant 26^{2}
  • 1L21 \leqslant L \leqslant 2

测试集 2(17 分,隐藏)

  • 1N20001 \leqslant N \leqslant 2000
  • 1L101 \leqslant L \leqslant 10

由 ChatGPT 4.1 翻译