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

题目描述

Vincent 和 Desta 是从小一起长大的朋友。今天,Vincent 用一些字母牌向 Desta 展示了 $N$ 个不同的 $L$ 字母单词。每个字母牌上有一个大写英文字母和一个 $1$ 到 $L$ 之间的数字。一个单词由 $L$ 个数字分别为 $1$ 到 $L$ 的字母牌按顺序拼成。(Vincent 的单词不一定是真正的英文单词。) 例如,如果 Vincent 有 $N = 3$ 个长度为 $L = 4$ 的单词,分别是 $\{\text{CAKE}, \text{TORN}, \text{SHOW}\}$,那么 Vincent 必须向 Desta 展示如下内容: ![](https://cdn.luogu.com.cn/upload/image_hosting/ve1i8p4m.png) Desta 觉得造单词一定很简单,他想用上述规则造出一个新的单词,并且不能和 Vincent 已有的单词重复。然而,Desta 没有自己的字母牌,他只能使用 Vincent 的字母牌。 例如,如果 Vincent 的单词如上例所示,Desta 可以拼出新的单词,如 $\text{CORN}$、$\text{SAKE}$ 或 $\text{CHRE}$(Desta 造的单词也不一定是真正的英文单词)。每个例子如下图所示: ![](https://cdn.luogu.com.cn/upload/image_hosting/0rhou6na.png) 注意,上图的三行是独立的。Desta 只需要造出一个新单词即可。 但是,在上述例子中,Desta 不能拼出 WAKE,因为没有数字为 $1$ 的 $\text W$ 字母牌。也不能拼出 coo,因为长度不对。 注意,有时 Desta 可能无法造出新单词。例如,如果 Vincent 只有一个单词,那么 Desta 无法造出任何新单词。又如,如果 Vincent 的单词为 $\{\text{AA}, \text{AB}, \text{BA}, \text{BB}\}$,那么 Desta 能拼出的所有单词都已在 Vincent 的单词列表中。 请帮助 Desta 选择一个他能用 Vincent 的字母牌拼出的新单词,或者指出无法拼出新单词。

输入格式

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

输出格式

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

说明/提示

**样例解释** 注意,最后两个样例不会出现在测试集 1 中。 样例 1 中,只能用 Vincent 的字母牌拼出 A、B、C、D 这四个单词,但这些单词都已在 Vincent 的单词列表中,所以 Desta 不能选择它们。 样例 2 中,有 $12$ 个可能的新单词可以拼出,其中之一是 $\text{WA}$。 样例 3 已在题目描述中解释,Desta 无法拼出新单词。 样例 4 已在题目描述中解释,也可以输出如 $\text{SAKF}$ 等其它答案。 样例 5 也可以输出如 $\text{TRAPJAM}$ 等其它答案。 **数据范围** - $1 \leqslant T \leqslant 100$。 - Vincent 的单词互不相同。 **测试集 1(11 分,可见)** - $1 \leqslant N \leqslant 26^{2}$。 - $1 \leqslant L \leqslant 2$。 **测试集 2(17 分,隐藏)** - $1 \leqslant N \leqslant 2000$。 - $1 \leqslant L \leqslant 10$。 由 ChatGPT 4.1 翻译