主要用于“相同元素”分到“不同容器”的排列组合。

【例1】 共有10本相同的书分到7个班里,每个班至少要分到一本书,问有几种不同分法?

【解析】注意,这里面有个隐含的条件,根据常理,7个班肯定是不同的。如果是书柜,可能是相同的。

因为书是相同的,可以排成一排,分给7个班,也就是在这一排书中间插入6个板,把书分成7份即可。这排书共10本,中间有9个空,选6个空插板,所以有C(9,6)种分法。

【例2】共有10本相同的书分到7个班里,问有几种不同分法?

【解析】注意这里没有要求每个班至少要分到一本,如果用插板法,两个板可以插到同一个空里。显然用原来的方法不能解决。但思路是一样的,把书分给7个班,我们还是插6块板,把书分成7份(如果板中间没有书,说明这一份是0)。但这个时候空位的数量不一定了,把思路换一下,当插好板以后,书和板一共16个位子,其实就是16个位子选6个位子放板。所以有C(16,6)种分法。

【例3】10个相同的球放入编号为1、2、3的盒子内,盒内球数不少于编号数,有几种不同的放法?

【解析】球数不少于编号数,就是1号盒子最少放1个球,2号盒子最少放2个球...。如果我们先把2号盒子放1个球,2号盒子放1个球,就变成每个盒子至少放一个球了,这时可以用最普通的插板法。答案是C(7,2)。

【例4】有10颗相同的糖,每天至少吃1颗,共有几种吃法?

【解析】注意,此题没有确定要几天吃完(例如如果要5天吃完,那么就是9个空插4个板,C(9,4)种),所以可以1天吃完,可以两天吃完。。。也可以10天吃完。那么就有C(9,0)+C(9,1)+C(9,2)+...+C(9,9)。

此题有一个更简单的思路,根据上面的分析,10颗糖排成一排,中间有9个空,每个空都可以插板,也可以不插板,插板或不插板各代表一种吃法,所以共有2*2*2...*2(9个2)=2^9种吃法。由此也可以知道,C(9,0)+C(9,1)+C(9,2)+...+C(9,9)=2^9。

【例5】一条马路上有编号为1,2,...,9共9盏路灯。现为了节约用电,需要关掉其中的3盏,但相邻的两盏或三盏不能同时关掉,问共有几种关法?

【解析】关掉的灯不能连在一起,我们可以先把要关掉的灯拿出来,这样还剩6盏灯,把关掉的灯插入亮灯中间和两边共7个共位。所以共有C(7,3)种关法。

【例6】一条马路上有编号为1,2,...,9共9盏路灯。现为了节约用电,需要关掉其中的3盏,但相邻的两盏或三盏不能同时关掉,为了安全起见,两边的灯不能关掉,问共有几种关法?

【解析】分析同上,但两边空位不能插关掉的灯,共有C(5,3)种关法。

捆绑法

【例7】有7语文书,6本数学书,3本英语书排成一排,要求数学书放在一起,英语书也要放在一起,有几种放法?

【解析】把数学书和英语书各看成一本进行排列,然后再分别对数学书和英语书进行排列,共有p(9,9)*p(6,6)*p(3,3)种放法。

【例8】有6个不同的球,放到5个不同的盒子里,每个盒子至少放一个,有几种放法?

【解析】必定有一个盒子是放两个球的,先找出两个球做了一个整体(因为这两个球放到同一个盒子里,所以不用考虑这两个球排列问题),有C(6,2)种方法,把这两个球看成一个整体,和另外4个球合在一起共5个球放在5个不同的盒子里,共有A(5,5)种方法,所以共有C(6,2)*A(5,5)种方法。

【例9】停车场有12个停车位,有8辆车要停,要求空车位要连在一起,共有几种停法?

【解析】还剩4个空车位,要连在一起,共有9种方法(8辆车之间7个空位都可以放连续空车位,首尾两端也可以,所以有9种方法),然后其余8个车位停8辆车,有P(8,8)种方法。所以共有9*P(8,8)=P(9,9)种方法。

【例10】ABCDE五人排队,A和B不能排在一起,有几种排法?

【解析】先让CDE三个排队,然后A和B插到空位里,共有P(3,3)*P(4,2)=3*P(4,4)。或者用所有的排列减去A和B在一起的排列P(5,5)-P(2,2)*P(4,4)=3*P(4,4)

【例11】8个人排队,要求甲乙两人排在一起但不能与丙排在一起,有几种排法?

【解析】先让其余5人排队,然后把甲乙看作一个整体,与丙一起插6个空,然后甲乙再排队,共有P(5,5)*P(6,2)*P(2,2)

【例12】 3个人坐在一排8个椅子上,若每个人左右两边都有空位,则坐法的种类有多少种?

【解析】每个人先坐好一把椅子,剩下的5把椅子还有4个空位,每个人带椅子插到空位上,共有P(3,3)*C(4,3)

转载于:https://www.cnblogs.com/ziyuwang/p/10384683.html

排列组合之插板法及变形相关推荐

  1. 排列组合的简单应用(隔板法)

    高中数学的排列组合,在许多题目中也有应用.甚至可以达到更快的解题速度,同时也会减少时间复杂度. 一般应用 拿NYOJ的一道题为例.https://acm.nyist.edu.cn/p/210. 通过读 ...

  2. [BZOJ1974][SDOI2010]代码拍卖会[插板法]

    题意 询问有多少个数位为 \(n\) 的形如 \(11223333444589\) 的数位值不下降的数字在\(\mod p\) 的意义下同余 \(0\). $n\leq 10^{18} ,p\leq ...

  3. C++程序随手写之阶乘及排列组合的实现

    #include<iostream>//promise11161314 using namespace std; int fun_fact(int s)//求阶乘 {if(s == 1)r ...

  4. [NOIP初赛复习]插空法与插板法解排列组合问题

    题目大意 现有21本书顺序排成一列,挑选4本书使得任意两本书不相邻,有多少种方法? 插板法 我们可以插入四块挡板,然后每块挡板左边的书为选定的书.容易得到,四块挡板一共分成五个部分,如果每个部分都有至 ...

  5. python 排列组合算法_排 列 组 合 公 式 及 排 列 组 合 算 法

    排列组合--排列公式的推理和组合 [实操追 - 女资 - 源] [企鹅 : 10⒈ б .x.9 526] 加法原理和乘法原理,是排列组合中的二条基本原理,在解决计数问 题中经常运用.掌握这两条原理, ...

  6. 高中数学基础05:排列、组合以及隔板法

    内容来自百度百科知识以及东方耀老师笔记内容的整合 1.排列组合基本概述 排列组合是组合学最基本的概念.所谓排列,就是指从给定个数的元素中取出指定个数的元素进行排序.组合则是指从给定个数的元素中仅仅取出 ...

  7. LeetCode 例题精讲 | 08 排列组合问题:回溯法的候选集合

    点击关注上方"五分钟学算法", 设为"置顶或星标",第一时间送达干货. 转自面向大象编程 本期例题:LeetCode 46 - Permutations[1]( ...

  8. c语言回溯法,回溯法 实现 排列组合(C 语言版本)

    * 所谓回溯:就是搜索一棵状态树的过程,这个过程类似于图的深度优先 * 搜索(DFS),在搜索的每一步(这里的每一步对应搜索树的第i层)中 * 产生一个正确的解,然后在以后的每一步搜索过程中,都检查其 ...

  9. 递归法:财务金额漏掉1笔或者几笔(排列组合)

    问题:某财务部门结账时发现金额不对,很可能是从明细上漏掉了一笔或者几笔,如果已知明细账目清单,能通过编程找到漏掉的是哪1笔或者几笔吗? 如果有多种可能,则输出所有可能的情况 我们规定,用户输入的第一行 ...

最新文章

  1. 从技术上解读大数据的应用现状和开源未来
  2. 飞鸽快递系统代码_自动售卖机、视觉+重力柜、自动寻址机、智能寄存柜解决方案及整套源代码...
  3. 【Jmeter自学】badboy使用(三)
  4. 【原创】android——SQLite的cmd命令的基本操作
  5. github项目怎么运行_利用 GitHub 从零开始搭建一个博客
  6. 《Drupal实战》——3.3 使用Views创建列表
  7. 牛客18985 数字权重 (数学,快速幂)
  8. Linux时间同步(内外网/内网/外网)
  9. python爬虫爬取图片代码_python爬虫实战 爬取天极图片
  10. [转]Centos 安装Sublime text 3
  11. 从零开始,CentOS6安装ghost博客
  12. 使用annotation配置hibernate(1)
  13. 百度爬虫robots.txt文件规范
  14. 曹雪芹的诗歌鸿蒙,曹雪芹的诗
  15. flowable Activiti7 会签
  16. 重载java_方法重载
  17. 青龙面板+Ninja的企业微信通知设置以及企业微信群消息转到微信方法
  18. numpy、pandas下载速度慢问题
  19. 如何判断一个bean是不是pojo 或者说简单bean by Introspector 和反射
  20. 销售技巧和话术,微信营销话术大全

热门文章

  1. 一首关于桃花与桃花仙的故事
  2. 区块链通证经济——资产流动性的变革
  3. 零售商店订单数据分析
  4. iOS 审核总被拒?如何提升 iOS 审核通过率!
  5. 量子态层析(quantum state tomography)
  6. 开源工单系统 python_运维工单--服务器申请工单
  7. 2021新版仿趣闲赚悬赏猫任务兼职网站源码
  8. keras离线官方文档
  9. [字符串题-java实现]LeetCode551. 学生出勤记录 I
  10. CSS 盒子模型box-sizing