#aCybttg020405. 最短母串

最短母串

好的,我将题目中的数字和名称用 ...... 标出。


题目描述

给定 nn 个字符串 S1,S2,,SnS_1, S_2, \dots, S_n(全由大写字母组成),要求找到一个最短的字符串 TT,使得这 nn 个字符串都是 TT 的子串。

如果有多个最短的 TT,则输出字典序最小的那个。


输入格式

第一行一个正整数 nn,表示字符串个数。
接下来 nn 行,每行一个由大写字母组成的字符串 SiS_i

输出格式

一行一个字符串 TT,表示最短母串。
在保证最短的前提下,如果有多个,输出字典序最小的。


数据范围

  • 1n121 \le n \le 12
  • 1Si501 \le |S_i| \le 50

输入样例

2 
ABCD
BCDABC

输出样例

ABCDABC

样例解释

字符串:ABCDABCD, BCDABCBCDABC
我们需要找到最短的 TT,使得 ABCDABCDBCDABCBCDABC 都是 TT 的子串。

可能的 TT

  • ABCDABCABCDABC:包含 ABCDABCD(位置 1144)和 BCDABCBCDABC(位置 2277),长度 77
  • BCDABCDBCDABCD:包含 BCDABCBCDABC(位置 1166)和 ABCDABCD(位置 3366),长度 77,但字典序 ABCDABCABCDABC 小于 BCDABCDBCDABCD
  • ABCDABCD 不足以包含 BCDABCBCDABCBCDABCBCDABC 不足以包含 ABCDABCD

最短长度为 77,其中字典序最小的是 ABCDABCABCDABC


这样题目就完整了,所有数字和名称都用 ...... 标出。