You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用指定字符串拼接规则生成全部去重的可能结果

Python实现方案

你提供的原始代码存在无限循环问题,且默认逻辑无法覆盖所有预期的2187种组合,调整后的实现逻辑如下:

  • 拼接规则说明:最终生成的7位字符串固定由三部分拼接而成:
    • 取第一个源字符串索引[2:5]的3个字符
    • 取第二个源字符串索引[5:7]的2个字符
    • 取第三个源字符串索引[:2]的2个字符
  • 用Python内置的set类型存储结果,利用集合自动去重的特性直接过滤重复值。
  • 对应3^7=2187总数要求的实现代码如下:
# 初始化三个原始字符串
L1 = "123abcd"
L2 = "456fghi"
L3 = "789vwxy"

# 初始合法字符串集合
current_strs = {L1, L2, L3}
# 存储所有结果的集合,自动去重
all_results = set(current_strs)

# 迭代7次生成所有符合要求的组合
for _ in range(7):
    new_strs = set()
    # 遍历所有可重复的三元组作为拼接源
    for a in current_strs:
        for b in current_strs:
            for c in current_strs:
                Lt = a[2:5] + b[5:7] + c[:2]
                new_strs.add(Lt)
    # 更新结果集和当前轮次的字符串集合
    all_results.update(new_strs)
    current_strs = new_strs

# 最终去重后的结果可转成列表使用
unique_result = list(all_results)
print(f"去重后有效字符串数量:{len(unique_result)}")

内容的提问来源于stack exchange,提问作者LeaC

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 04:39:03