luogu#P12171. [蓝桥杯 2025 省 Python B] 最长字符串

[蓝桥杯 2025 省 Python B] 最长字符串

题目描述

小蓝手里有一个单词本,上面记录了一些单词,保存在 words.txt 中,其中每一行包含一个仅有小写英文字母组成的单词。

小蓝想要找到一个最长的优美字符串。

一个长度为 nn 的字符串 s=c1c2cns = c_1c_2 \cdots c_n 是优美字符串,必须满足 ss 在单词本中,且满足以下两个条件之一:

  1. n=1n = 1
  2. n>1n > 1,且存在一个优美字符串 ss'ss' 的长度为 n1n - 1ss' 的字符调整顺序后与 c1c2cn1c_1c_2 \cdots c_{n-1} 一致。

示例,假设 words.txt 文件中的单词如下:b、bc、cbd、dbca,那么:

  • s1=bs_1 = \tt{b},长度 1,是优美字符串;
  • s2=bcs_2 = \tt{bc}s=bs' =\tt b 在单词本中出现过,并且是优美字符串,所以 s2s_2 是优美字符串;
  • s3=cbds_3 =\tt cbds=bcs' =\tt bc 在单词本中出现过,并且是优美字符串,所以 s3s_3 是优美字符串;
  • s4=dbcas_4 =\tt dbcas=cbds' =\tt cbd 在单词本中出现过,并且是优美字符串,所以 s4s_4 是优美字符串;

现在请你帮助小蓝从单词本 words.txt 中找出长度最大的优美字符串,如果存在多个答案,优先使用字典序最小的那一个作为答案。

输出格式

这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一个字符串,在提交答案时只需要编写一个程序输出这个字符串,输出多余的内容将无法得分。