这会是一个大型连载blog
内容主要来自《组合数学》+博主的思考

容斥原理

之前在“组合数学一”中提到过容斥原理
我们在这里直接给出推论:

设Ai表示在集合S中拥有特征Pi的元素子集,则集合S中至少具有性质P1,P2,P3,…,Pm之一的对象个数由下式表示:

在这一节中,有一个经典问题

∞ 例一

确定多重集合 T={3a,4b,5*c} 的10组合的数目

这道题我们要充分利用容斥原理:
设 T*={ ∞a,∞b,∞c }
P1=T
的10组合中a出现多于3次
P2=T的10组合中b出现多于4次
P3=T
的10组合中c出现多于5次
Ai表示拥有Pi性质的10组合的数目,S是T*的10组合数

我们看一下每种集合的求法:
首先S的求法很简单(十个位置,三种元素),经典的隔板法:

我们重点是在Ai的求法,我们以A1为例(其余的都是同理):
A1表示 “T*的10组合中a出现多于3次” 的组合数,那我们就可以确定这10个数中一定至少有4个a
所以原问题就变成了:有6个位置,3种元素,每个元素不限制出现次数,由此形成的组合数

那么剩下的所有集合大小都可以如上求出:

注:这个问题也可以用生成函数解决,本文中就不再冗述了

∞ 例二

满足:1<=X1<=5,-2<=X2<=4,0<=X3<=5,3<=X4<=9
的方程 (X1+X2+X3+X4=18) 的正整数解有多少?

我们引入一些新变量:
Y1=X1-1,Y2=X2+2,Y3=X3,Y4=X4-3

Y1+Y2+Y3+Y4=16 ①

则,关于Xi的方程有解当且仅当:
0<=Y1<=4,0<=Y2<=6,0<=Y3<=5,0<=Y4<=6
设S是①所有的非负整数解
P1是Y1>=5的性质,P2是Y2>=7的性质,P3是Y3>=6的性质,P4是Y4>=7的性质
Ai是具备Pi性质的方程解

错位排序

我们先来一个情境引入:
话说七仙女又到凡间泡澡了。。。
突然,天降大雨(估计是王母娘娘不高兴了)七仙女都急忙上岸,随便抓起一套衣服就穿上了
那么七个人全部穿错衣服有多少种情况呢?

(mdzz的例子。。。)
这个就是错位排列
我们直接给出式子:

现在我们提出一个结论:

实际上,Dn是最接近n!*e^-1的整数

考虑随机选出{ 1,2,…,n }的一个排列的实验,时间E是没有整数在其自然位置上排列,即选出的这个排列是一个错位排序,因此 |E|=Dn ,且E的概率为:

这样在本节一开始的“七仙女的故事中”,概率就为D7/7!
从效果上看,概率就是e^-1
即使是有一万个仙女,最后的答案也是e^-1

下面我们就讨论一些Dn满足的其他便于其求值的关系

结论一


其中n>=3
初始值:D1=0,D2=1

结论二


其中n>=2

以上两个小结论类似于阶乘的公式

我们还是看一下例题:

∞ 例三

再一次聚会上,有n位男士和n位女士在跳舞前存放了ta们的帽子,在聚会结束的时候随机返还给ta们这些帽子
如果每位男士得到的都是一顶男帽,女士得到的都是一顶女帽,但又都不是他们的,有多少方法呢?

如果没有限制,那么方法数就是(2n)!
如果加上男士得到男帽,女士得到女帽,那么就有(n! * n!)种方法
如果再加上没有人得到ta们自己的帽子,则有 (Dn*Dn)种 方法

组合数学之二 —— 容斥原理及应用相关推荐

  1. 组合数学(二)排列数和组合数

    文章目录 无重排列和组合 圆周排列与重排列 圆周排列 重排列 无重排列和组合 无重排列个数用P(n,r)表示 P(n,r)=n(n−1)⋅⋅⋅(n−r+1)P(n,r)=n(n-1)···(n-r+1 ...

  2. 离散数学/组合数学:利用容斥原理,求满射函数的个数,注意它容斥原理求得的是”非满射函数的个数”,以在A到B形成的函数的总个数为“全集“求该全集中”非满射函数的个数”的补集才是目标个数。

    用能够形成的总函数个数为全集,利用容斥原理求得各类非满射的函数的个数再求其补集才是所求. 这里利用的考察元素的方法 我们依次考察"b1不在值域"+"b2不在值域" ...

  3. 组合数学—容斥原理与鸽巢原理

    目录 一 写在开头 二 容斥原理 三 鸽巢原理 四 Ramsey定理 五 Burnside引理与波利亚定理 注:原创不易,转载请务必注明原作者和出处,感谢支持! 一 写在开头 本文内容为<组合数 ...

  4. 【组合数学】组合数学简介 ( 组合数学脉络 | 组合数学技巧 | 组合思想 1 : 一一对应 )

    文章目录 一.组合数学脉络 二.组合数学思想 1 : 一一对应技巧 三.组合计数模型 与 一一对应 一.组合数学脉络 组合存在性问题 : 鸽巢原理 , Remsey 定理 ; 组合计数问题 : 计数定 ...

  5. 容斥原理在计算机中的应用,容斥原理论文.doc

    1 引言 组合数学,是一门非常古老的学科,它是相数学的一个分支,但却不同于一般的分析数学,组合数学的研究对象是满足一定条件的离散数据,以及它们的存在.计数以及构造等方面问题[1, 2].然而,在计算机 ...

  6. ACM 全部算法总结

    ACM 所有算法 附带我学过的算法的博客链接 数据结构 栈 队列 链表 哈希表 哈希数组 堆 优先队列 双端队列 可并堆 左偏堆 二叉查找树 Treap 伸展树 并查集 集合计数问题 二分图的识别 平 ...

  7. ACM计算几何题目推荐

    //第一期 计算几何题的特点与做题要领: 1.大部分不会很难,少部分题目思路很巧妙 2.做计算几何题目,模板很重要,模板必须高度可靠. 3.要注意代码的组织,因为计算几何的题目很容易上两百行代码,里面 ...

  8. POJ 计算几何入门题目推荐

      其实也谈不上推荐,只是自己做过的题目而已,甚至有的题目尚未AC,让在挣扎中.之所以推荐计算几何题,是因为,本人感觉ACM各种算法中计算几何算是比较实际的算法,在很多领域有着重要的用途(例如本人的专 ...

  9. acm常见算法及例题

    1 acm常见算法及例题 2 3 初期: 4 一.基本算法: 5 (1)枚举. (poj1753,poj2965) 6 (2)贪心(poj1328,poj2109,poj2586) 7 (3)递归和分 ...

最新文章

  1. PHP 打印调用堆栈信息
  2. Http接口开发(自测服务端客户端)
  3. 漫话:如何给女朋友解释什么是BIO、NIO和AIO?
  4. ping 中的“TTL是什么意思
  5. 多分类f1分数_机器学习之分类模型评估总结
  6. 软件测试mysql存储过程的用处实例_软件测试中实际应用:MySQL5存储过程编写
  7. 【FPGA】Vivado综合停滞、死机(PID Not Specified)解决方法
  8. 安装ie9提示未能完成安装_win10系统安装iE提示“internet Explorer未能完成安装”的修复教程...
  9. matlab标定工具箱标定投影仪常见问题
  10. 公派访问学者办理签证的五点建议
  11. jsonp无X-Requested-With 及其深扒
  12. 图像显著性论文(四)—Context-Aware Saliency Detection
  13. ELECTRA: PRE-TRAINING TEXT ENCODERS AS DISCRIMINATORS RATHER THAN GENERATORS
  14. windows下修改黑苹果config_黑苹果家用PC安装苹果Mac OS操作系统经验(下)工具和资源...
  15. 大数据运维工程师面试题目
  16. git-删除fork的项目
  17. 兔老大的系统设计(二)定时系统(延时队列)
  18. 评估企业是否适合开发复合业务服务
  19. 西南大学计算机考研,西南大学907考研,西南大学808考研
  20. 学校计算机语音室管理制度,多媒体、语音室管理制度

热门文章

  1. 如何在WinXP下查看软硬件端口的占用情况
  2. 【温故而知新-Javascript】使用 Ajax
  3. STorM32 BGC 三轴云台学习(一) 通信协议分析
  4. java 首字母小写_Java中属性名首字母大小写问题
  5. C++逆序数(奇排列和偶排列的判定)
  6. 不想重置路由器,如何由已连接设备快速获取wifi密码?
  7. Matlab实现滤波器,进行ASK、FSK、多音信号的滤波
  8. java+js实现展示本地文件夹下的所有图片demo[申明:来源于网络]
  9. Second season seventh episode,Ross finds out Rachel like him,what will he do???
  10. 五伤四损 - 万全《养生四要》