好的,我将题目中的数字和名称用 ... 标出。
题目描述
给定 n 个字符串 S1,S2,…,Sn(全由大写字母组成),要求找到一个最短的字符串 T,使得这 n 个字符串都是 T 的子串。
如果有多个最短的 T,则输出字典序最小的那个。
输入格式
第一行一个正整数 n,表示字符串个数。
接下来 n 行,每行一个由大写字母组成的字符串 Si。
输出格式
一行一个字符串 T,表示最短母串。
在保证最短的前提下,如果有多个,输出字典序最小的。
数据范围
- 1≤n≤12
- 1≤∣Si∣≤50
输入样例
2
ABCD
BCDABC
输出样例
ABCDABC
样例解释
字符串:ABCD, BCDABC
我们需要找到最短的 T,使得 ABCD 和 BCDABC 都是 T 的子串。
可能的 T:
- ABCDABC:包含 ABCD(位置 1–4)和 BCDABC(位置 2–7),长度 7。
- BCDABCD:包含 BCDABC(位置 1–6)和 ABCD(位置 3–6),长度 7,但字典序 ABCDABC 小于 BCDABCD。
- ABCD 不足以包含 BCDABC;BCDABC 不足以包含 ABCD。
最短长度为 7,其中字典序最小的是 ABCDABC。
这样题目就完整了,所有数字和名称都用 ... 标出。