首页 > 试题广场 >

字符串组合

[编程题]字符串组合
  • 热度指数:5555 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 64M,其他语言128M
  • 算法知识视频讲解
输入一个字符串,输出该字符串中相邻字符的所有组合。
举个例子,如果输入abc,它的组合有a、b、c、ab、bc、abc。(注意:输出的组合需要去重)(40分)

输入描述:
一个字符串


输出描述:
一行,每个组合以空格分隔,相同长度的组合需要以字典序排序,且去重。
示例1

输入

bac

输出

a b c ac ba bac
s = input()
ret = []
for i in range(len(s)):
    ret_t = set()
    for j in range(len(s) - i):
        ret_t.add(s[j:j + i + 1])
    ret.extend(sorted(list(ret_t)))
print(' '.join(ret))

发表于 2024-10-10 00:40:27 回复(0)