相信学过统计(Statistics)的大家对“排列组合”(Permutations and Combinations)这个词都不陌生,对于复杂的排列组合问题我们一般有三种基础解决方法:
分类讨论法
整体法
插空法
但是在数学竞赛中我们通常会遇到一些涉及样本数字较大或分类情况较复杂的问题,这个时候我们希望通过观察思考总结一定的规律,即球盒模型,可以用来解决大部分的排列组合问题。
只要对模型有充足的理解后,再将实际问题转换为球盒问题即可运用模型的结论直接求解,稍后我们会以AMC数学竞赛的例题进行具体说明。
什么是球盒模型?
问题描述:现将n个球放入r个盒子当中,问一共有多少种结果?
首先,在讨论之前需要明确3个不确定因素:
n个球是否完全相同?
r个盒子是否完全相同?
盒子能否为空?
每个前提因素都将影响最终的放置结果,因此对于三个因素我们同时分情况讨论,共八种可能情况,也对应了八种不同类型的排列组合问题。现在我们分别来看这八种情况分别如何求解?
至此我们解决了球盒问题中的8种类型的问题。值得注意的是除了插空法和组合公式,我们还运用到了一个特殊的公式——斯特林数(Stirling)。
在组合数学,Stirling数可指两类数,第一类Stirling数和第二类Stirling数。其中,第二类斯特林数是 n 个元素划分为 k 个等价集合的方案数, 也就是之前介绍的球盒问题的第 5 种类型。
更具体地:
针对斯特林数还有很多有趣的性质,尤其在数学建模问题中有很多应用,感兴趣的同学可以进一步研究。
接下来我们举例说明如何运用球盒问题快速解决AMC数学竞赛中的排列组合问题。
解析:
这个问题完全可以直接转换为球盒问题求解:将6个完全相同的球(饼干数量)放入3个不同的箱子(饼干类型)且允许盒子为空(可不选某种类型饼干),根据上面第4种情况的结论,该题解为C(6+3-1,3-1)=28,选D。
解析:
这个问题也可以直接转换为球盒问题求解:将7个完全相同的球(donuts数量)放入4个不同的箱子(donuts类型)且不允许盒子为空(每个类型donuts至少选一个),根据上面第3种情况的结论,该题解为C(7-1,4-1)=20,选A。