容斥原理:......
乘法原理、加法原理:......
如果有4个男孩和4个女孩坐成一排,每个人旁边都只能坐着异性,那么共有多少种坐的方式? 2*4!*4!
由a, b, b, e, e, h, i, s, s, t, t, t可以组成多少个长度为12的字符串?C(12, 3)*C(9, 2)*C(7, 2)*C(5, 2)*3!=9979200
从(0, 0)点出发沿x轴或y轴的正方向每步走一个单位,最终走到(m, n)点,有多少条路径? C(m+n, m)=C(m+n, n)
集合{1, 2, 3, ..., n}上的单调递增函数数量?就是要求(1 , 1)到(n+1 , n)上的非降路径数量C(2n-1, n)
从集合{1, 2, 3, ..., m}到{1, 2, 3, ..., n}上的单调函数数量是2C(m+n-1, m)
⭐️n个结点依次进栈,出栈顺序有多少种?
假设x轴代表进栈、y轴代表出栈,则x≥y,即路径从(0 , 0)到(n , n)但始终不越过对角线
假设路径越过了对角线并与y=x+1交于P,将(0, 0)到P的部分沿着y=x+1翻转,从(-1 , 1)到(n , n)的非降路径数就是C(2n, n-1)
故不越过对角线的非降路径数就是C(2n, n)-C(2n, n-1)=C(2n, n)/(n+1)
此外也可以用生成函数的方法解答
错排数/德•蒙特莫特数D(n)
方法1:建立递推关系
第1步,选择第n个元素的位置,共有n-1种方法(假定放在编号为k的位置)
第2步,选择第k个元素的位置,有两种可能
第k个元素放在编号为n的位置,此时剩下的n-2个元素进行错排即可,方案数是D(n-2)
或者第k个元素不在编号为n的位置,此时把编号为n的位置视作编号为 k 的位置,将 n-1 个元素进行错排即可,方案数是 D(n-1)
由此得到递推关系D(n)=(n-1)(D(n-2)+D(n-1))和初值D(1)=0 和 D(2)=1
方法2:应用容斥原理。
n个元素的全排列有n!个,用集合Ak表示第k个位置是第k个元素(也即元素k没有发生错排)的所有排列
|Ai|=(n-1)!
|Ai∩Aj|=(n-2)!
|Ai∩Aj∩Ak|=(n-3)!
……
|A1∩A2∩…∩An|=0!