DFS C++单词接龙
发布时间
阅读量:
阅读量
单词接龙是一种与我们日常所玩的成语接龙游戏相似的玩法。
目前,我们掌握了一组单词,并且已知一个起始字母,需要找出以该字母开头的最长“龙”,其中每个单词最多可被使用两次。
当两个单词连接时,它们之间重叠的部分将被合并为一个整体,例如 beast 与 astonish 连接后会形成 beastonish。
在连接过程中,我们可以自由选择重叠部分的长度,但该长度需满足大于等于1,并且必须严格小于两个字符串各自的长度,比如 at 与 atide 之间无法进行连接。
输入格式
输入的首行包含一个单独的整数 n,用于表示单词的数量。接下来的 n 行中,每一行均包含一个单词(仅由大写或小写字母构成,长度不超过20个字符)。输入的最后一行则为一个单独的字符,代表“龙”这一词语的起始字母。可确保以该字母开头的“龙”字必定存在于输入之中。
输出格式
仅需输出以该字母起始的最长“龙”字的长度。
数据范围
当n的数值不超过20时,
相关单词将被随机生成。
输入样例解析
5
at
touch
cheat
choose
tact
a
输出样例:
23
所构成的“龙”
全部评论 (0)
还没有任何评论哟~
