排列组合——隔板法

排列组合是一个神奇的东西在我看来。只要一个公式,一个逻辑,就可以解决复杂多样的问题。

在组合数学中,隔板法(又叫插空法)是排列组合的推广,主要用于解决不相邻组合与追加排列的问题。

例一:

给你10个球,让你放在3个箱子里,问你有多少种摆法?

这种问题咋一看和排列组合没有半毛钱关系,其实,通过画图,就知道了。

其实挡板分割的三个部分,就是每个箱子拥有的球数。

这样的问题有一个模板:

给你n个球,让你放在k个箱子,问你有多少种摆法。

问题可以转化为:给你(n-1)个间隔,让你往间隔里面放(k-1)隔板,求方案数。

这样问题就迎刃而解了。

C(n-1,k-1)就是所求。

例二:

给你十个球,让你放在3个篮子里,可以有篮子为空,问多少种摆法?

这道题难度就大了很多,“可以为空”,我们还是用排列组合解。

怎么转化题目?其实我们可以把为空看成不为空,只需要开始在每个篮子都加一个球就可以了,其他就跟例一的解法一样。

例三:

将20个相同的小球放入编号分别为1,2,3,4的四个盒子中,要求每个盒子中的球数不少于它的编号数,求放法总数。

其实这道题还是类似的题目。我们在例二考虑了增加球数,这里可以减少球数吗?

当然的

我们先给1,2,3,4号篮子分别放0,1,2,3个球,那么剩下14个球,我们只需要在按照例一的方法去做,就可以了。


想要做题?

方程的解:https://jzoj.net/senior/#main/show/1344

猜你喜欢

转载自blog.csdn.net/fengyingjie2/article/details/68069293