首页 > 代码库 > 学习总结--数学.基本计数方法

学习总结--数学.基本计数方法

学习总结--数学.基本计数方法

一、计数方法的原理

1.加法原理:做一件事情有n中办法,第i种办法有pi种执行方案,那么总的解决这件事情的方案数即为p1+p2+p3+...+pn

2.乘法原理:做一件事情分为n个步骤,第i个步骤的执行方案有pi种,则一共有p1?p2?p3?...?pn种方案解决该问题。

3.容斥原理:一个班级有,集合A的人喜欢数学,集合B的人喜欢英语,结合C的人喜欢语文,那么该班级的人数应该是多少?
如果我们将三个集合的人数相加起来,那么就重复计算了既喜欢数学又喜欢英语的、既喜欢英语又喜欢语文的和既喜欢数学又喜欢语文的人,还有三种都喜欢的学霸级人物被计算了三次!!!
完全不科学啊,所以我们再减去既喜欢数学又喜欢英语的、既喜欢英语又喜欢语文的和既喜欢数学又喜欢语文这样的次级学霸。嗯,没错,计算了两次就减掉一次。但是好像哪里有什么不对,我们貌似忘记计算学霸了(三个科目都喜欢的人),好没存在感,被计算了三次又被减掉了三次!.所以作为特殊补偿,我们单独计算学霸。
于是乎得到了公式:A?B?C=A+B+C?A?B?B?C?C?A+A?B?C
加加减减,把重复的扣掉,再把扣多的加回来

二、常见的计数问题

1.排列问题:有n个不同的数,选k个排成一排,每个数最多选一次,问有多少种排列的方法?
分析:对于第一个位置,可以选n种数字,但是对于第二个位置,要扣除第一个位置上的数字,所以有n?1种选法,一次类推,根据乘法原理即为A(kn)=n!/(n?k)!

2.组合问题:有n个不同的数,选出k个,顺序无关,问有多少种选择方法?
分析:已经知道如果需要排序的答案是A(kn),而每一次选出来的k个数也是不同,排列种数即为k个数中选择k个数并且排列的问题,为A(kk),这样答案即为A(kn)A(kk),即排列组合公式C(kn)

3.二项式展开问题,求(a+b)n展开式的各项系数。
分析:根据二项式定理(a+b)n=k=0nC(kn)?an?k?bk,于是只要求出各个C(kn)即可。

4.有重复元素的全排列,k个元素,其中第i个元素有ni个,求全排列的个数?
分析:设答案为x,因为n1+n2+n3+...+nk=n,所以有n1!?n2!?n3!?...?nk!?x=n!,x可求。

5.可重复选择的组合,有n个不同元素,每个元素可以选多次,一共选k个元素,问优多少种选法?
分析:设第i个元素有xi个,那么就有x1+x2+x3+...+xn=k,求该式子的非负整数解个数,等于是将k个1随机分配给xi,可是有些xi可能一个都分不到,那么我们该怎么计算呢?令yi=xi+1,则有y1+y2+y3+...+yn=k+n,这样当yi=1时,xi=0,所以我们要将k+n个1,随机分配个yi,并且保证每个yi都至少分到一个。于是C(n?1k+n?1) 即为 C(kk+n?1)

6.单色三角形,给定空间里的n个点,其中没有三点共线,每两个点之间都用红色或者黑色线段连接。求三条边同色的三角形个数。
分析:从反面考虑,我们只需要求出非单色三角形的个数即可以求出单色三角形的个数,对于一个公共点的两个异色边来说,仅有唯一的单色三角形。所以对与每个顶点,有ai条边红色边,n?1?ai条黑色边,于是构成了ai?(n?1?ai)个异色三角形。于是总共有12i=1nai?(n?1?ai)

三、组合数学的性质

性质1:C(0n)=C(nn)
性质2:C(kn)=C(n?kn)
性质3:C(kn)+C(k+1n)=C(k+1n+1)
性质4:C(k+1n)=C(kn)?n?kk+1