使用包含M个字符的字母计算长度为N的密码

时间:2014-09-29 18:15:30

标签: combinations permutation dynamic-programming combinatorics counting

说,我们的字母表中有 M 字符。我们想要形成长度 N 的密码(或字符串)。约束是所有密码必须包含输入字母中的每个字符<至少一次。那么,有多少这样的密码是可能的?

另外,M <= N

示例-1: M = 4 ,N = 4 ,答案= 24

Answer = M! or N! (all permutations of length 4)

示例-2: M = 2 ,N = 3 ,答案= 6

Let M = {a, b}
Possible passwords are {aab, aba, baa, bba, bab, abb}

那么,我们是否可以推导出 M N 的给定值计算此类密码的通用公式

1 个答案:

答案 0 :(得分:1)

最后,我得到了答案:

答案= m! * S(n,m)

其中,S(n,m)= Stirling number of second kind