bol_in 2021-12-17 20:01 采纳率: 64.6%
浏览 64
已结题

Python 計算出對字串取n個字元的所有組合可能


求該題目程式碼
輸入一個大小寫英文字串和一個數字n,以一個空格間隔,且n需小於等於字串的長度,字串中不得有空格且字元不得重複,字串長度不得超過8字元

輸出說明:
計算出對字串取n個字元的所有組合可能,組合內依原字串中字元順序排序,再對所有組合可能依字典順序排序後,依序以一個空格間隔輸出。
==============
Sample input 1:
ABCD 2

Sample output 1:
AB AC AD BC BD CD
==============
Sample input 2:
pekoPEKO 8
Sample output 2:
pekoPEKO
==============
Sample input 3:
pelican 3

Sample output 3:
can ean eca ecn eia eic ein ela elc eli eln ian ica icn lan lca lcn lia lic lin pan pca pcn pea pec pei pel pen pia pic pin pla plc pli pln
==============
Sample input 4:
Guavb 4

Sample output 4:
Gavb Guab Guav Guvb uavb
==============
Sample input 5:
DinoSaur 5
Sample output 5:
DSaur DiSar DiSau DiSur Diaur DinSa DinSr DinSu Dinar Dinau DinoS Dinoa Dinor Dinou Dinur DioSa DioSr DioSu Dioar Dioau Diour DnSar DnSau DnSur Dnaur DnoSa DnoSr DnoSu Dnoar Dnoau Dnour DoSar DoSau DoSur Doaur iSaur inSar inSau inSu
  • 写回答

4条回答 默认 最新

  • chuifengde 2021-12-17 20:23
    关注
    import itertools as it
    s,n = input(">>>").split()
    n = int(n)
    res = it.combinations(s, n)
    result = list(map(lambda x: ''.join(x), res))
    result.sort()
    print(' '.join(result))
    '''
    --result
    >>>pelican 3
    can ean eca ecn eia eic ein ela elc eli eln ian ica icn lan lca lcn lia lic lin pan pca pcn pea pec pei pel pen pia pic pin pla plc pli pln
    
    '''
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(3条)

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 12月23日
  • 已采纳回答 12月23日
  • 创建了问题 12月17日

悬赏问题

  • ¥30 这是哪个作者做的宝宝起名网站
  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!