问题:任意给一堆的数字,使用这些数字所不能组成的最小数字是多少?
举例:对于数字串‘16923245780’,不能组成的最小的数字是11.因为一共就一个1,而这个数字串还可以组成12,13等比11大的数字。
代码块
@author:ypfzhao
def function():
while True:
Str=input('Please input some numbers:')
if Str is 'q': #当输入的字符串为‘q’时,推出循环
print('Exit the program')
break
num=[]
Min=0
for i in range(10):
num.append(Str.count(str(i)))
num[0]+=1
count_min=num[0]
for i in range(10):
if num[i]<count_min:
count_min=num[i]
count_min_of_num=num.index(count_min)
if count_min_of_num==0:
Min=10**count_min
else:
for i in range(count_min+1):
Min=Min*10+count_min_of_num
print(Min)
if __name__=='__main__':
function()