如何将n个相同的球分配到具有不同容量的k个相同的盒子中

时间:2018-01-06 09:05:17

标签: statistics permutation combinatorics

假设有4个盒子容量为10,5,2,1。请帮我找到将16个相同的球分配到这四个盒子中的方法。每个方框可以有0到球的容量数。

2 个答案:

答案 0 :(得分:0)

我们可以简化问题 “找出将2个相同的球分成4个盒子的方法,容量分别为2,2,2和1”, 因为我们可以计算原文中的空格。

1)如果我们把球放在第4个盒子里,那么我们有3个盒子用于另一个--3组合。

2)现在我们根本没有把球放在第4个盒子里,所以我们有3个盒子,有2个位置。

N R个K = 2 ^ 3 = 8

总的来说,我们有8 + 1 = 9种组合。

答案 1 :(得分:-1)

让部分为a_1,...,a_k及其总和n,总共有n个!组合,然后每个a_i部分是相等的,所以我们将它除以所有a_i!然后除以k !,所以最终的答案是:

n!/(a_1!* a_2!* ... * a_k!* k!)。

这可以使用Fermats定理用O(n)预处理在O(k)中计算。