给定一个数组,比如说,
arr = [5, 5, 4, 4, 2, 1]
,我该如何找到所有可能的排列中与原始数组相同的排列数量(假设原始数组总是按降序排列)。在这个示例中,将有4个排列与原始数组相等。使用Python中的itertools.permutations可以得到这个结果。有没有更快的方法?我会非常感激。以下是我的Python代码,速度太慢了。from itertools import permutations
arr = sorted(map(int, (raw_input().split())), reverse = True)
perms = permutations(n,len(arr))
cnt = 0;
for i in perms:
if list(i) == arr: print i; cnt += 1
print cnt