python練習(xí)題41


求解字符串?dāng)?shù)字組合
Python的內(nèi)建模塊itertools提供了非常有用的用于操作迭代對象的函數(shù),其中combinations, permutations是用求解組合和排列的函數(shù)。 請輸入一個有由數(shù)字大小寫字母組成的字符串 與 一個整數(shù) n,去掉字符串中大小字母僅保留數(shù)字的字符串,輸出去重后數(shù)字符串的n位全組合。
輸入格式:
例如:
第一行輸入至少含一個數(shù)字字符的一串字符串,例如:ABC12DE3De125DE4(去重后數(shù)字字符串:12354);
第二行輸入一整數(shù)n:( 保證n小于等于 去重后數(shù)字字符串的長度)。
輸出格式:
去重后數(shù)字字符串按從大到小的全組合。每種組合占一行,字符間無空格。排列的輸出順序為字典順序。
輸入樣例:
在這里給出一組輸入。例如:
ABC12DE3De125DE4?
3
答:
import itertools
s=list(input())
n = int(input())
list1=[]
for i in s:
? ? if i.isdigit() == True and i not in list1:
? ? ? ? list1.append(i)
list1.sort(reverse = True)
for j in list(itertools.combinations(list1,n)):
? ? print(*j,sep='')

