早教吧 育儿知识 作业答案 考试题库 百科 知识分享

排列公式的一组问题,PYTHON解决或者数学方法012345678910个数字,组成4位数,比如0000这样4个全一样的,这样出现的次数是多少,比如1112这样3个一样的,这样的出现的次数是多少,比如1123这样2个一

题目详情
排列公式的一组问题,PYTHON解决或者数学方法
0123456789 10个数字,组成4位数,
比如0000 这样4个全一样的,这样出现的次数是多少,
比如1112 这样 3个一样的,这样的出现的次数是多少,
比如1123 这样2个一样的,这样出现的次数是多少?
还有最后就是1234 这样4个,出现的次数是多少?
组合0 9 的数字,包括 0 的,
▼优质解答
答案和解析
start = 0
end = 10000
a = {4:0,3:0,2:0,1:0}
t = set()
for i in range(start,end):
t.clear()
[t.add(s) for s in '%04d' % i]
if len(t) == 1:
a[4] += 1
elif len(t) == 3:
a[2] += 1
elif len(t) == 4:
a[1] += 1
elif ('%04d' % i).count(t.pop()) != 2:
a[3] += 1
print a
# {1:5040,2:4320,3:360,4:10}