《排列组合专题》PPT课件.ppt
《《排列组合专题》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《排列组合专题》PPT课件.ppt(85页珍藏版)》请在三一办公上搜索。
1、加法原理和乘法原理,加法原理和乘法原理是排列组合的基础和核心,既可用来推导排列数、组合数公式,也可用来直接解题。它们的共同点都是把一个事件分成若干个分事件来进行计算。利用加法原理,重在分“类”,类与类之间具有独立性和并列性;利用乘法原理,重在分步;步与步之间具有相依性和连续性。比较复杂的问题,常先分类再分步。,1.加法原理:如果完成一项工作有两类相互独立的方式A和B,在方式A中有m种完成任务的途径,在方式B中有n种完成任务的途径,则完成这项工作的总的途径有m+n种.,2.乘法原理:如果完成一项工作有两个连续的步骤A和B,在步骤A中有m种不同的方式,在步骤B中有n种不同的方式,则完成这项工作的总
2、的方法有m*n种.,例1、,从1到4这4个数码中不重复地任取3个构成一个三位数,求这样的三位数一共有多少个?,分析:构成三位数的过程可以看成是由连续的三步完成:第一步:取百位上的数字,共有4种方法第二步:取十位上的数字,共有3种方法(即不能取百位上已经取走的数码)第三步:取个位上的数字,共有2种方法(即不能取百位和十位上已经取走的数码)因此由乘法原理,这样的三位数一共有:4*3*2=24种.,例2、,一个三位数,如果它的每一位数字都不小于另一个三位数对应数位上的数字,就称它“吃掉”后一个三位数,例如543吃掉432,543吃掉543,但是543不能吃掉534。那么能吃掉587的三位数共有多少个
3、?,百位上有5、6、7、8、9五种选择,十位上有8、9两种选择,个位上有7,8,9三种选择,所以共有523=30(个)三位数。,例3、,如图,一方形花坛分成编号为,四块,现有红、黄、蓝、紫四种颜色的花供选种,要求每块只种一种颜色的花,且相邻的两块种不同颜色的花。如果编号为的已经种上红色花,那么其余三块不同的种法有 种。,21,编号为的有三种选择,对于编号为的,可以分成以下二类:1、若编号为的与编号为的同色,则编号为的有三种选择。这种情况下共有33种方案。2、若编号为的与编号为的不同色,则编号为的有二种选择,编号为的有二种选择。这种情况下共有322种方案。,例4、,用红、黄、绿、蓝、黑五种颜色涂
4、在如下图所示的ABCDE五区域,颜色可重复使用,但同色不相邻,涂法有几种?,AC同色:5*4*4*1*4AC不同色:5*4*4*3*3,1040,例5、,在一块并排的10垄田地中,选择二垄分别种植A,B两种作物,每种种植一垄,为有利于作物生长,要求A,B两种作物的间隔不少于6垄,不同的选法共有_种。,分析:采取分类的方法。第一类:A在第一垄,B有3种选择;第二类:A在第二垄,B有2种选择;第三类:A在第三垄,B有一种选择,同理A、B位置互换,共12种。,例6、,某小组有10人,每人至少会英语和日语的一门,其中8人会英语,5人会日语,从中选出会英语与会日语的各1人,有多少种不同的选法?,由于8+
5、51310,所以10人中必有3人既会英语又会日语。(5+2+3)所以可分三类:52+53+23=31,例7、,在所有的三位数中,有且只有两个数字相同的三位数共有多少个?,(1),(2),(3),,(1),(2),(3)类中每类都是99种,共有99+99+99399243个只有两个数字相同的三位数。,例8、,求正整数1400的正因数的个数,因为任何一个正整数的任何一个正因数(除1外)都是这个数的一些质因数的积,因此,我们先把1400分解成质因数的连乘积1400=23527.所以这个数的任何一个正因数都是由2,5,7中的若干个相乘而得到(有的可重复)。,于是取1400的一个正因数,这件事情是分如下
6、三个步骤完成的:(1)取23的正因数是20,21,22,23,共3+1种;(2)取52的正因数是50,51,52,共2+1种;(3)取7的正因数是70,71,共1+1种所以1400的正因数个数为(3+1)(2+1)(1+1)=24,例9、,从1到300的自然数中,完全不含有数字3的有多少个?,将0到299的整数都看成三位数,其中数字3不出现的,百位数字可以是0,1或2三种情况。十位数字与个位数字均有九种,因此除去0共有3991=242(个),例10、,在小于10000的自然数中,含有数字1的数有多少个?,不妨将0至9999的自然数均看作四位数,凡位数不到四位的自然数在前面补0,使之成为四位数。
7、先求不含数字1的这样的四位数共有几个,即有0,2,3,4,5,6,7,8,9这九个数字所组成的四位数的个数。由于每一位都可有9种写法,所以,根据乘法原理,由这九个数字组成的四位数个数为99996561。于是,小于10000且含有数字1的自然数共有9999-6561=3438个,排列的定义,数学上,把若干元素,按照任何一种顺序排成一列,叫做排列。如果两个排列满足下列条件之一,它们就被认为是不同的排列:1.所含元素不全相同 2.所含元素相同,但顺序不同。,相异元素不重复的排列,从 n个不同的元素中,取出r个不重复的元素,按次序排成一列,当rn时,称为从n个中取r个的一种选排列。,如:从a,b,c这
8、三个字母中,每次取出2个,有多少种排列方法?第一步:确定左边的字母,在三个字母中任取一个,有种方法;第二步:确定右边的字母,从剩下的个字母中选取一个,有种方法;根据乘法原理,共有种不同的排法.ab ac ba bc ca cb,一般地,从n个不同的元素中取出r个元素的选排列数用 表示,则 n!/(n-r)!,例全国足球甲级(组)联赛共有队参加,每队都要与其它各队在主、客场分别比赛一次,共进行多少场比赛?,任何二个队进行一次主场比赛和一场客场比赛,相当于从14个元素中任取2个元素的一个排列,共需进行的比赛场次是=14!/12!=14*13=182,当n=r时,叫做n个不同元素的全排列n个不同元素
9、的全排列数Pnn n!,例个人站成一排照相,共有多少种不同的排列方法?,!,例3、求有多少个没有重复数字且能被5整除的四位奇数。,要能被5整除又是奇数,所以个位上数字只能是5,有1种选法,由于5已用过,又不可能是0,所以千位上数有P18种选法,已用过2个数,所以百位、十位上的数有P28种选法。所以符合题意的个数为:1 P18 P28448,例4、用0、1、2、3、4、5六个数字,可以组成多少个没有重复数字的三位偶数?,1.个位为0,十位为1、2、3、4、5中的一个,百位为剩下的四个数字中的一个,所以这样的偶数共有1P15P14,2.个位为2,百位为1、3、4、5中的一个,十位为剩下的四个数字中
10、的一个,所以这样的偶数共有1P14P14,3.个位为4,百位为1、2、3、5中的一个,十位为剩下的四个数字中的一个,所以这样的偶数共有1P14P14,所以符合题意的个数为20161652,例5、8位同学排成相等的两行,要求某两位同学必须排在前排,有多少种排法?,这两个同学排在前排4个位置的排列数是P24,其它同学在余下的6个位置排的排列数是6!,所以符合题意的个数为P246!127208640。,例6、某车站有编号为1到6的6个入口处,每个入口处每次只能进一人,问一个小组4人进站的方案有几种?,第一个人有6种方案,第二个人有7种方案,因为他选择和第一个人相同入口处时,还有前后之分9*8*7*6
11、=3024,相异元素的可重复排列,从n个不同元素中取出r个元素的可重复的排列种数为nr.,93=729,例7由数字1,2,3,9共能组成多少个三位数?,相异元素的循环排列,n个不同元素不分首尾排成一个圆圈,称为循环排列。其排列数为n!/n=(n-1)!。如1,2,3三个数的循环排列只有,二种。,例8在圆形花坛外侧摆放盆菊花和盆兰花,要求兰花不能相邻摆放,一共有多少种摆法?,盆菊花摆成一周的排列方法有n1=!盆兰花插入个空中的排列总数有n2=P=8!/4!摆放总数为n=n1*n2=8467200,例9有男女各五个人,其中有对是夫妻,沿圆桌就座,若每对夫妻都坐在相邻的位置,问有多少种坐法?,设对夫
12、妻分别为和a,和b,和c,先让,三人和另外个人沿圆桌就座的方法为!种又对上述每种坐法,a坐在的邻座的方式有左右两种,b,c也如此所以共有!种,不全相异元素的排列,如果在n个元素中,有n1个元素彼此相同,有n2个元素彼此相同,,又有nm个元素彼此相同,若n1+n2+nm=n,则这n个元素的全排列叫做不全相异元素的全排列,其排列数为:n!/(n1!*n2!*nm!).,若n1+n2+nm=rn,则这n个元素的全排列叫做不全相异元素的选排列,其排列数为:prn/(n1!*n2!*nm!).,例10、将N个红球和M个黄球排成一行。如:N=2,M=3可得到10种排法。问题:当N=4,M=3时有 种不同排
13、法?,7!/(4!*3!)=35,NOIP2002,例11、把两个红球、一个蓝球和一个白球放到十个编号不同的盒子中去,有多少种方法?,排列数为p410/(2!*1!*1!)2520,生成排列的算法,下面程序的功能是利用递归方法生成从1到n(n10)的n个数的全部可能的排列(不一定按升序输出)。例如,输入3,则应该输出(每行输出5个排列):123 132 213 231 321 312,求全排列(06年初赛题),var i,n,k:integer;a:array1.10 of integer;count:longint;procedure perm(k:integer);var j,p,t:in
14、teger;begin if()then begin();for p:=1 to k do write(ap:1);write();if()then writeln;exit;end;,for j:=k to n do begin t:=ak;ak:=aj;aj:=t;perm(k+1);t:=ak;()end end;begin writeln(Entry n:);read(n);count:=0;for i:=1 to n do ai:=i;()end.,perm(1),K=n,inc(count),count mod 5=0,ak:=aj;aj:=t;,123 132 213 231 3
15、21 312,算法过程:用数组:a:array1.r of integer;表示排列;初始化时,ai:=i(i=1,2,r);设中间的某一个排列为a1,a2,,ar,则求出下一个排列的算法为:从后面向前找,直到找到一个顺序为止(设下标为j-1,则aj-1aj)从aj ar中,找出一个比aj-1大的最小元素ak将aj-1与ak交换将aj,aj+1ar由小到大排序。,问题描述:用生成法求出1,2,r的全排列(r=8).1999年提高组,const r=7;var n,i,s,k,j,i1,t:intger;a:array1.rof integer;procedure print1;var ik:i
16、nteger;begin for ik:=1 to r do write(aik:8);writeln;endbegin for i:=1 to r do _;print1;输出第一个排列 s:=1;for i:=2 to r do s:=s*i;总排列数为r!s:=s-1;还需生成s-1个排列 for i:=_ _do begin j:=r;while_ _do j:=j-1;k:=j;for i1:=j+1 to r do if _ _ then k:=i1;,t:=aj-1;aj-1:=ak;ak:=t;for i1:=j to r-1 do for k:=i1+1 to r do if
17、 _then begin t:=ai1;ai1:=ak;ak:=t;end;print1;end;end.,ai:=i,1 to s,aj-1aj,(ai1aj-1)and(ai1ak),ai1ak,1 3 2 5 41 3 4 5 21 3 4 2 5,【问题描述】人类终于登上了火星的土地并且见到了神秘的火星人。人类和火星人都无法理解对方的语言,但是我们的科学家发明了一种用数字交流的方法。这种交流方法是这样的,首先,火星人把一个非常大的数字告诉人类科学家,科学家破解这个数字的含义后,再把一个很小的数字加到这个大数上面,把结果告诉火星人,作为人类的回答。火星人用一种非常简单的方式来表示数字掰手
18、指。火星人只有一只手,但这只手上有成千上万的手指,这些手指排成一列,分别编号为1,2,3。火星人的任意两根手指都能随意交换位置,他们就是通过这方法计数的。一个火星人用一个人类的手演示了如何用手指计数。如果把五根手指拇指、食指、中指、无名指和小指分别编号为1,2,3,4和5,当它们按正常顺序排列时,形成了5位数12345,当你交换无名指和小指的位置时,会形成5位数12354,当你把五个手指的顺序完全颠倒时,会形成54321,在所有能够形成的120个5位数中,12345最小,它表示1;12354第二小,它表示2;54321最大,它表示120。下表展示了只有3根手指时能够形成的6个3位数和它们代表的
19、数字:,火星人(04年普及组),现在你有幸成为了第一个和火星人交流的地球人。一个火星人会让你看他的手指,科学家会告诉你要加上去的很小的数。你的任务是,把火星人用手指表示的数与科学家告诉你的数相加,并根据相加的结果改变火星人手指的排列顺序。输入数据保证这个结果不会超出火星人手指能表示的范围。【输入文件】输入文件martian.in包括三行,第一行有一个正整数N,表示火星人手指的数目(1=N=10000)。第二行是一个正整数M,表示要加上去的小整数(1=M=100)。下一行是1到N这N个整数的一个排列,用空格隔开,表示火星人手指的排列顺序。【输出文件】输出文件martian.out只有一行,这一行
20、含有N个整数,表示改变后的火星人手指的排列顺序。每两个相邻的数中间用一个空格分开,不能有多余的空格。【样例输入】531 2 3 4 5【样例输出】1 2 4 5 3【数据规模】对于30%的数据,N=15;对于60%的数据,N=50;对于全部的数据,N=10000;,var n,m,i,ss,j,k,temp:integer;min:longint;a:array1.10000of integer;begin readln(n);readln(m);for i:=1 to n do read(ai);while m0 do一次循环产生下一个排列 begin j:=n;while(j1)and(a
21、jaj-1 min:=aj;k:=j;for i:=j to n do if(aiaj-1)and(aimin)then begin k:=i;min:=ai;end;从aj到an,找出一个比aj-1大的最小值 temp:=aj-1;aj-1:=ak;ak:=temp;交换,for i:=j to n-1 do begin ss:=i;for k:=i+1 to n do if assak then ss:=k;if ssi then begin temp:=ai;ai:=ass;ass:=temp;end;end;在j到n中,从小到大排列 m:=m-1;end;for i:=1 to n d
22、o write(ai,);end.,531 2 3 4 51 2 3 5 4 1 2 4 5 3 1 2 4 3 51 2 4 5 3,组合的定义,数学上,把若干元素,不论次序并成一组,叫做组合。如果两个组合中,至少有一个元素不同,它们就被认为是不同的组合。abc,abd,相异元素不重复的组合,设从n个不同的元素中,取出m个不同元素,不考虑顺序并成一组,叫作从n个不同的元素中,取出m个不同元素的一个组合。,如:写出从a,b,c,d四个元素中,任取三个元素的所有组合。,abc,abd,acd,bcd,从n个不同的元素中,取出m个不同元素的组合数记为Cmn;则有CmnPmn/m!=n!/m!(n-
23、m)!规定C0n=1,abc,bac,cab,acb,bca,cba,例1、八年级6个班进行排球比赛,每班的排球队要与其他5个班分别比赛一场,求共要进行多少场比赛?,C26P26/2!=6*5/2*1=15,例2、平面上有n个点且无三点或三点以上共线,任意两点可以连成一条直线,一共能连成多少条直线?,C2nn*(n-1)/2,例3、某班第一组有10名同学,第二组有8名同学,现要求每组选出2名学生代表参加座谈会,有多少种选法?,C210C281260,例4.一元、二元、五元、十元人民币各一张,一共可以组成多少种不同的币值?,C14C24C34C44464115,例5、5年级有8个班,六年级有6个
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 排列组合专题 排列组合 专题 PPT 课件
链接地址:https://www.31ppt.com/p-2056058.html