P13250 [GCJ 2014 #1B] The Repeater
题目描述
Fegla 和 Omar 每天都喜欢玩游戏。但现在他们已经玩腻了所有的游戏,于是决定自己发明一个新游戏,叫作 **"The Repeater"**(重复者)。
这是一个两人游戏。Fegla 写下 $N$ 个字符串,Omar 的任务是**将所有字符串变得完全相同**(如果可能),并且在此过程中所使用的操作次数要尽量少(也可以为 $0$ 次)。允许的操作有以下两种:
- 从任意一个字符串中,**选择一个字符,并重复它一次**(即在它后面再加上一个相同的字符)。例如,Omar 可以用一次操作把 `"abc"` 变成 `"abbc"`(重复字符 `'b'`)。
- 从任意一个字符串中,**选择两个相邻且相同的字符,并删除其中一个**。例如,Omar 可以用一次操作将 `"abbc"` 变成 `"abc"`(删除一个 `'b'`),但不能将其变成 `"bbc"`。
这两种操作是独立的,没有顺序要求,既不需要操作一之后紧跟操作二,也不要求操作二只能跟在操作一之后。
你的任务是帮助 Omar 胜利:判断是否有可能将这 $N$ 个字符串通过若干次操作变得完全一样;如果可以,求出最少的操作次数。
输入格式
输入的第一行是测试用例的数量 $T$。接下来的 $T$ 个测试用例中,每个测试用例以一行整数 $N$ 开始,表示字符串的数量。之后的 $N$ 行,每行包含一个非空字符串(所有字符串只由小写英文字母 `'a'` 到 `'z'` 组成)。
输出格式
对于每个测试用例,输出一行 `"Case #x: y"`,其中 $x$ 是测试用例编号(从 $1$ 开始),$y$ 是使所有字符串相同所需的最小操作次数。如果无法将所有字符串变得相同,则输出 `"Fegla Won"`(不含引号)。
说明/提示
**限制条件**
- $1 \leq T \leq 100$
- 每个字符串的长度不超过 $100$
**小数据集(10 分)**
- 时间限制:$60$ 秒
- $N = 2$
**大数据集(13 分)**
- 时间限制:$120$ 秒
- $2 \leq N \leq 100$
翻译由 ChatGPT-4o 完成。