蓝桥杯-算法训练 单词接龙

问题描述

单词接龙是一个与我们经常玩的成语接龙相类似的游戏,现在我们已知一组单词,且给定一个开头的字母,要求出以这个字母开头的最长的“龙”(每个单词都最多在“龙”中出现两次),在两个单词相连时,其重合部分合为一部分,例如 beast和astonish,如果接成一条龙则变为beastonish,另外相邻的两部分不能存在包含关系,例如at 和 atide 间不能相连。

输入格式

输入的第一行为一个单独的整数n (n<=20)表示单词数,以下n 行每行有一个单词,输入的最后一行为一个单个字符,表示“龙”开头的字母。你可以假定以此字母开头的“龙”一定存在.

输出格式

只需输出以此字母开头的最长的“龙”的长度

样例输入

5
at
touch
cheat
choose
tact
a

样例输出

23

样例说明

连成的“龙”为atoucheatactactouchoose

锦囊 点击展开

锦囊1

搜索。

锦囊2

使用递归搜索,每次试着将一个可以加到后面的单词加到后面,并检查答案是不是更优。

参考代码

此处为隐藏的内容!
发表评论并刷新,才能查看
俊霖

发表评论

您必须

目前评论:21   其中:访客  17   博主  4

  1. 246 5

    看看

  2. 246 5

    然而并不给看

  3. 246 2

    看看看

  4. Oh,yes! 5

    看看~

  5. 巴黎古鐘敲碎了落日余暉つ 5

    为什么不给看
    :sad:

  6. 巴黎古鐘敲碎了落日余暉つ 1

    h还是不能

  7. HJ 3

    看看

  8. watchfree watchfree 4

    学习~

  9. 1530675447 0

    看一看

  10. 心卟痛+已霚★ 2

    看一看。。。

  11. 雨过霜叶_38574 1

    瞧一瞧!!

  12. ymx200181 5

    很不错的资料

  13. Lions 3

    看看

  14. 微笑、掩盖忧伤 2

    看看

  15. 陌上花开 2

    学习~

  16. 一缕暖光 1