zoukankan      html  css  js  c++  java
  • 挡板法

    先贴上参考博客(1)(2)(3)   //要有素质

    挡板法即在n个元素(n-1个空)中插入k-1个板子,把这n个元素分成k组,方案数为$C_{n-1}^{k-1}$(每组至少一个元素)

    例1:

    10个相同的小球放入3个箱子,每个箱子至少一个,问有几种情况? 

    求方程 x+y+z=10的正整数解的个数

    答案:$C_{10-1}^{3-1}$=$C_{9}^{2}$

     

    例2:

    10个相同的小球放入3个箱子,每个箱子可以不放,问有几种情况? 

    求方程 x+y+z=10的非负整数解的个数

    我们假设给每个箱子各添一个球,问题就转化为与例1相同的问题:

    把13个相同小球放入3个不同箱子,每个箱子至少一个,有几种情况?

    答案:$C_{12}^{2}$

     

    好了,进入正题:(体会思想)

    添元素挡板法

    例3:

     10个相同小球放入3个不同箱子,第一个箱子至少1,第二个箱子至少3,第三个箱子可以不放球,有几种情况?

    先给第3个箱子添一个球,再从10个球中拿出2个放入第1个箱子,则问题又转化为例1:

    把9个(10+1-2)相同小球放入3个不同箱子,每个箱子至少一个,有几种情况?

    答案:$C_{8}^{2}$

    例4:

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

    从20个球中拿出6个分为1,2,3个分别放在2,3,4四个盒子内,则问题变为(又是例1):

    把14个相同小球放入4个不同箱子,每个箱子至少一个,有几种情况?

    答案:$C_{13}^{3}$

    例5:

    有一类自然数,从第三个数字开始,每个数字都恰好是它前面两个数字之和,直至不能再写为止,如257,1459等等,这类数共有几个?

    性质:(1)前两位确定一个数   (2)设前两位为a,b,则a+b<=9,且a不为0

        所以只需要找前两位满足(2)的有几种情况

    然后我就错误的把问题转化为:把9个1分成两部分,前一部分>=1,后一部分可为0 ==> 把9个小球放入两个箱子,第一个至少一个,第二个可以不放 ==> 变为例3,答案$C_{9}^{1}$    想想这题和例3有什么区别?  嗯,例3必须把10个小球全部放入,而本题是<=9

    所以  怎么做?

    想法1:我们添一个箱子c,则问题转化为:把9个小球放入3个箱子,第一个箱子a至少1个,第二第三个箱子b,c可以不放

    这样就同例3了,给第2,3个箱子每个先添1个球,问题变为:把11个小球放入3个箱子,每个箱子至少一个

    想法2:我们假设在9个1中插入两个板子,分成3组,第一组为a,第二组为b,但此时b一定>=1,且a+b<=8,

         所以我们把9扩大到10,则a+b<=9成立,但此时b一定>=1,

            那我们就再扩大,把10变成11,当第1个板子插在9和10中间时,a=9,b本应为1,但你只选取前9位的答案,所以把b看作0

         (即下面的添板挡板法)

    答案:$C_{10}^{2}$

    添板挡板法

    附上dalao的上一题添板挡板法的解释:

    显然a+b<=9 ,且a不为0   1 -1- 1 -1 -1 -1 -1 -1 -1 - -    1代表9个1,-代表10个空位 (第一个没有因为a不能为0),

    我们可以在这9个空位中插入2个板,分成3组,第一组取到a个1,第二组取到b个1,但此时第二组始终不能取空,

    若多添加第10个空时,设取到该板时第二组取空,即b=0,所以一共有 c(10,2)=45  

    懂了?

    选板法

    例6:

    10粒糖,如果每天至少吃一粒(多不限),吃完为止,求有多少种不同吃法?

    10粒糖,9个空,插9个板,每个板选择放或不放

    答案:$2^9$

    分类插板法

    例7:

    小梅有15块糖,如果每天至少吃3块,吃完为止,那么共有多少种不同的吃法?

    这道题和前面的题都不一样,他没有规定一定要吃几天,所以我们要对吃的天数分类讨论

    最多吃5天,最少吃1天

    (1)吃1天或吃5天,各一种情况 ans+=2;

    (2)吃2,3,4天均同例3例4,每天预先吃2块(从15块中刨出来)ans+=$C_{10}^{1}$+$C_{8}^{2}$+$C_{6}^{3}$;

    逐步插板法

    例8:

    在一张节目单中原有6个节目,若保持这些节目相对次序不变,再添加3个节目,共有几种情况?

    3个节目可以挨着,不能一块插,所以我们考虑一步一步插:

    用第一个节目去插7个空位,第二个插8个空位,第三个插9个空位

    答案:$C_{7}^{1}$+$C_{8}^{1}$+$C_{9}^{1}$

    有最大限制的插板法(容斥原理正在靠近ing)

    把m个完全相同的球放入n个完全相同的箱子,每个箱子至少1个球,至多3个球 的方案数。

    求n个正整数之和为m,每个数都<=k,的方案数

    我们先了解一下容斥原理:先把无限制的情况选出来 - 不符合条件的情况

    $C_{m-1}^{n-1}$算出无限制的情况后,要计算不符合条件的情况

  • 相关阅读:
    Civil 3D .NET二次开发第11章代码升级至2018版注意事项
    创建道路曲面
    ObjectARX® for Beginners: An Introduction
    mshcMigrate制作的mshc文件中有链接打不开
    Word 2013无法发布文章到博客园
    ionic 安装插件报错:源文本中存在无法识别的标记
    typescript文件中 使用回调函数无法调用函数外的变量和方法的办法
    ionic2---自定义插件
    angular2----使用swiper做轮播图
    angular2----router
  • 原文地址:https://www.cnblogs.com/qwertyuiopasdfghjklzxcvbnm/p/11329136.html
Copyright © 2011-2022 走看看