本文主要介绍Python中,输入多个0和1数字,算出可能的组合的二制数的排列数方法,以及示例代码。

例如,

输入:

0 1 0 1

输出:

6

原因:对于给定的输入,可能形成的不同二进制序列是 0011、0101、0110、1001、1010、1100。所以是6 。

实现方法:

import math
c=input() //输入格式0101
c=list(c)
a=0
b=0
for i in c:
if int(i)==0:
a+=1
if int(i)==1:
b+=1
answer=int(math.factorial(len(c))/(math.factorial(a)*math.factorial(b)))
print(answer)

或者

import math
n=input().split() //输入格式0 1 0 1
a=math.factorial(len(n))//(math.factorial(n.count("1"))*math.factorial(n.count("0")));
print(a,end="")