#AT2304. D - Unique Username

D - Unique Username

当前没有测试数据。

D - 唯一的用户名

得分:400分

问题描述

Takahashi 在决定一个服务的用户名时遇到了麻烦。编写一个代码来帮助他。

找到一个字符串 $X$ ,满足以下所有条件:

  • $X$ 是通过以下步骤获得的:
    • 设 $S_1', S_2', \ldots,S_N'$ 是 $S_1, S_2, \ldots,S_N$ 的一个全排列,然后按照以下顺序将它们依次串联起来得到 $X$:$S_1'$,(一个或多个下划线_),$S_2'$,(一个或多个下划线_),$\ldots$,(一个或多个下划线_),$S_N'$。
  • $X$ 的长度介于 $3$ 到 $16$ 之间,包括端点值。
  • $X$ 不与任何字符串 $T_1,T_2,\ldots,T_M$ 相同。

如果没有满足所有条件的 $X$ ,则输出 -1

约束条件

  • $1 \leq N \leq 8$
  • $0 \leq M \leq 10^5$
  • $N$ 和 $M$ 是整数。
  • $1 \leq |S_i| \leq 16$
  • $N-1+\sum{|S_i|} \leq 16$
  • $S_i \neq S_j$ 当 $i \neq j$。
  • $S_i$ 是由小写英文字母组成的字符串。
  • $3 \leq |T_i| \leq 16$
  • $T_i \neq T_j$ 当 $i \neq j$。
  • $T_i$ 是由小写英文字母和下划线组成的字符串。

输入

从标准输入中按以下格式给出输入:

NN MM

S1S_1

S2S_2

\vdots

SNS_N

T1T_1

T2T_2

\vdots

TMT_M

输出

输出一个满足所有条件的字符串 $X$ 。如果没有满足所有条件的 $X$ ,则输出 -1
如果有多个解,输出任意一个都可以。


1 1
chokudai
chokudai
-1

唯一满足第一个和第二个条件的字符串是 $X=$ chokudai ,但它与 $T_1$ 相同。
所以没有满足所有条件的 $X$ ,应该输出 -1


2 2
choku
dai
chokudai
choku_dai
dai_choku

choku__dai(即 chokudai 之间有两个下划线_)这样的字符串也满足所有条件。


2 2
chokudai
atcoder
chokudai_atcoder
atcoder_chokudai
-1

chokudai__atcoderatcoder__chokudai(即 chokudaiatcoder 之间有两个下划线_)的长度为 $17$ ,违反了第二个条件。


4 4
ab
cd
ef
gh
hoge
fuga
____
_ab_cd_ef_gh_
ab__ef___cd_gh

给定的 $T_i$ 可能包含不能通过第一个条件描述的字符串。