文章目录
- 相邻组合问题
- 捆绑法和插入法
- 例子🎈
- 分组问题
- 均匀分组
- 最简单的均匀分组:
- 问题模型
- 不均匀分组
- 局部均匀分组
- 综合
- 例题
相邻组合问题
捆绑法和插入法
- 在组合数学中,捆绑法和插入法是排列组合的推广,主要用于解决相邻组合与不相邻组合的问题。
例子🎈
- 若有A,B,C,D,E五个人排队,要求A和B两个人必须站在相邻位置,则有多少种排队方法?
- 将A和B两个人捆绑,对(A,B),C,D,E进行排列,
- (A,B)内部排列有种排法,记
- X,C,D,E有种排法
- 由乘法原理,共有=种
- 若有A,B,C,D,E五个人排队,要求A和B两个人必须不站在一起,则有多少种排队方法?
- 方法1:使用互补(互斥)法配合捆绑法所有排法减去相邻排法即得不相邻排法,
- 方法2:使用插空法,将A,B插入安全位置(
$X$Y$Z$
),
- 其中X,Y,Z表示可以相邻的的某一种排列
- 将插入
$
所指的位子都能够满足不相邻的要求 - 间又可以产生种排列
- 由乘法原理有
分组问题
- 排列组合问题通常可以分为两类:
- 如果问题本身是有序的,往往容易直接求解
- 如果问题包含了无序部分,可以先按照有序的做法进行计算,然后再去出重复的倍数即可
均匀分组
最简单的均匀分组:
- n个人,均分成n个组,每组至少一个人,有几种分法?
- 显然只有一种分法(每组一个人这一种分组方法):
- 这种计算方法假设n个组之间有顺序之分,再除以重复的倍数得到结果
- n个人,均分成n个组,每组至少一个人,执行n个不同任务有几方法
- =
- 6个人,均分为3组,有多少种方法?
- 本问题是一个无序组合问题:
- 分组之间不关系顺序
- 组内成员不关心顺序
- 只关心组内成员的构成
- 解决无序组合问题可以建立合适的有序排列模型(直接乘法原理)再去序的方式间接解决无序的组合问题
- 设三个组分别为,并且它们是有序的
- 根据组合数计数原理,设6个人编号为1,2,3,4,5,6,从中选两个人组成一组,所有的可能有=种,记所有可能的二人组的集合为,则
- 划分第一组两个人时有种可能,划分第二组时有种可能,划分第三组时有种可能
- 根据乘法原理(解决有序排列问题),这3个组将产生种可能
- 例如的一种可能的取值是;={1,2},={3,4},={5,6},将这个方案记为={{1,2},{3,4},{5,6}}
- 中包含的3个元素的排列有种,这6种排列应当视为一种分组方案
- 因此,取出排列组间排列带来的重复计数,需要除以均分的组数的全排列,即=种
问题模型
- n=km个元素均分为k组(每组m个),有多少种方法?
- 解:
- 例如,6人分3组,
不均匀分组
- 将6个人分成3个组,各有个人,有多少种方法?
- 根据组合数和乘法原理,有=
- 由于3个组每个组的人数互不相等,因此不需要去序
局部均匀分组
- n个元素作局部均匀分组,分为s=个组
- 前m个组的元素数目:将其记为,其余组元素各不相同,不妨设,
- 均匀部分:假设s个组有序,那么均匀分组的前p个组有可能,其中包含了一个重复倍数
- 严格不均匀部分:后剩余的t个组仍然按照分组和连乘的方式计算,但是不需要除以重复倍数(因为各组的元素数目不同)
- 这部分可能又包含了一个局部均匀分组问题,递归的做下去即可
- 例如,10个不同的人,需要分为6个组,前3个组每组3个人,第4,5组每组2个人;第6组2个人:
综合
- 6个人分成3组,每组至少1个人,有多少种分法?
- 分为3类情况
- 6=1+1+4
- 6=1+2+3
- 6=2+2+2
- 第1类是局部均匀分组
- 第2类是不均匀分组
- =60
- 第3类是均匀分组:
- =15
- 由加法原理合计有种
例题
- 某交通岗有3人,从每周7天中,每天安排1人值班,每人至少值班2天,不同的排法种数(D)?
A:5040
B:1260
C:210
D:630 - 解:由于每个人至少值两天班,我们将7天拆分为,其中是分配给某个值班人员的天数
- 本例中,,可见7可以分解为,即{2,2,3}
- 将7天中的2天分配给员工1有种情况
- 将剩余的天中的2天分配给员工2有种情况
- 将剩余的3天分全部分配给第3个员工有种情况
- 注意到第1个员工和第2个员工分配到的天数是相同的,
- 意味着可以对调两个员工的值班日期从而产生新的安排方法
- 员工1,2,3的值日天数的不同组合可能;
- {2,2,3}
- {2,3,2}
- {3,2,2}
- 上述3种分割方案都可以产生种情况(3个集合都属于允许元素重复的特殊集合:多重集)
- 所以共有种方案
- 分割方案还可以通过来计算(不尽相异物)这里将包含{2,2,3}的多重集中的两个2作区别:
- 做排列(有种),不改变多重集,例如{}={}
- =630