Math 可能有多少种不同的组合?
给定的位数为m,位数为n。你必须以每一个数字至少出现一次的方式来填充这m个位置 比如说 给定m为4,n为3,所以有4个位置和3个数字。现在,对于这个总数,可能的组合数是36 让我们举一个简单的例子: m=3和n=2(假设a,b),则可能的组合为 aba-aab abb-bab-baa-baa 因此,只有6种组合是可能的。因为我需要找到可能的组合数,所以是否有任何公式 答案是Math 可能有多少种不同的组合?,math,combinations,permutation,Math,Combinations,Permutation,给定的位数为m,位数为n。你必须以每一个数字至少出现一次的方式来填充这m个位置 比如说 给定m为4,n为3,所以有4个位置和3个数字。现在,对于这个总数,可能的组合数是36 让我们举一个简单的例子: m=3和n=2(假设a,b),则可能的组合为 aba-aab abb-bab-baa-baa 因此,只有6种组合是可能的。因为我需要找到可能的组合数,所以是否有任何公式 答案是n!S(m,n),其中S为 例如,对于m=4,n=3,n=6,S(4,3)=6,所以n!S(m,n)=36这是预期的答案 为
n!S(m,n)
,其中S
为
例如,对于m=4,n=3
,n=6
,S(4,3)=6
,所以n!S(m,n)=36
这是预期的答案
为什么是这个公式?
第二类斯特林数
S(m,n)
计算将一组m
元素划分为n
非空子集的方法数。因此,对于这个问题,S(m,n)
计算将m
位置划分为n
组的方法的数量,每组对应一个数字。在划分之后,我们应该为每个组指定一个数字,并且有n代码>执行此操作的方法。因此,答案是n!S(m,n)
这个问题似乎离题了,因为它是关于数学而不是编程的。我能闻到一些DP的味道。可能一些递归函数可以解决这个问题。+1:谢谢你的解释——今天我学到了什么是“第二类斯特林数”!真棒的解释:)