目录
开学后的第一篇博文,太不容易了。。。。。今后我会做更多关于我要打的比赛要考的一些知识,也方便自己回顾。
最后有很多例题给大家练练手哦。
前言
排列组合是CCF(中国计算机学会(China Computer Federation),大家可以去看看它的官网:https://www.noi.cn/)的CSP(Certified Software Professional,软件能力认证)、NOIP(全国青少年信息学奥林匹克联赛)、NOI(全国青少年信息学奥林匹克竞赛)常考的知识点。排列组合也是数学中的一个重要分支,属于离散数学和组合数学的范畴。(但由于我才小学,不太懂)
排列组合主要包括以下内容:
1、基本概念和公式:包括排列的定义、组合的定义、排列公式和组合公式等。
2、应用问题:如设计算法求解特定问题的排列组合数、利用排列组合知识优化算法等。
3、算法设计:在算法设计中融入排列组合的思想,如使用递归、动态规划等方法求解排列组合问题。(个人觉得难度很大)
以下公式中,n表示元素总数,m表示取出的元素个数。这些公式已经能满足绝大部分需求。
排列
排列是指从给定个数的元素中取出指定个数的元素进行排序。其公式如下:
A(n,m)=((n-m)!)/(n!)
由于CSDN的公式功能不好用,不好表达。n!指n的阶乘,/指除以,*指乘。
组合
组合则是指从给定个数的元素中仅仅取出指定个数的元素,不考虑排序。
C(n,m)=(m!*(n-m)!)/(n!)
示例题目
1、(2019 CSP-S 第6题)由数字1,1,2,4,8,8所组成的不同的4位数的个数是()
A. 104
B. 102
C. 98
D. 100
2、(2021 CSP-J 第12题)由1,1,2,2,3这五个数字组成不同的三位数有()种。
A. 18
B.15
C.12
D.24
3、(2023 CSP-S 第2题)0,1,2,3,4中选取4个数字,能组成()个不同的四位数。(注:最小的四位数是1000,最大的四位数是9999)
A. 96
B. 18
C. 120
D.84
4、(2020 CSP-J 第10题)5个小朋友并排站成一列,其中有两个小朋友是双胞胎,如果要求这两个双胞胎必须相邻,则有 ( ) 种不同排列方法?
A. 48
B. 36
C. 24
D. 72
题目答案与解析
1、答案:B
解析:
不能直接A(6,4),要分情况讨论:
(1)只有2个相同的数构成的4位数,(1、1、2、4);(1、1、2、8);(1、1、4、8);(1、2、8、8);(1、4、8、8);(2、4、8、8)组成,每种有A(4,4)/A(2,2)=4×3=12(种)共有12×6=72种.
(2)4个不同的数构成,只有1、2、4、8组成,有A(4,4)=4×3×2×1=24(种)
(3)2个重复的数字构成,只有1、1、8、8,有C(4,2)=6(种)
所以,共有72+24+6=102(种)
2、答案:A
解析:
方法一:枚举,结果为18种,但是为了防止出现重复和丢失的情况,规定数据升序排列:
112,113,121,122,123,131,132
211,212,213,221,223,231,232
311,312,321,322
方法二:选三个数字出来,如果各不相同只有一种选法,就直接排三个有6种,
123 132 213 231 312 321 A33
如果有两个重复,就在1,2里面选一个重复的,剩下两个选1个,总共2*2=4种, C(2,1)C(2,1)
(1 1 2) (1 1 3) (2 2 1) (2 2 3)
然后排不重复那个在前中后哪个位置,每个有3种, C(2,1)C(2,1)C(3,1)
(1 1 2) 211 121 112
(1 1 3) 311 131 113
(2 2 1) 122 212 221
(2 2 3) 322 232 223
总共有12种,加起来18种。
注:A,右上3,右下3,就是A(3,3)的意思。图中所用的表达方法更常用。
3、答案:A
解析:
选第一个数字时,可以从1,2,3,4中挑选一个,有4种方案, C(4,1)
第二个数字可以从0,以及1,2,3,4中剩余的3个数中挑选一个,有4种方案,C(4,1)
依此类推,第三、四个数分别有3种和2种方案,
总方案数为4*4*3*2=96。
4、答案:A
解析:
两个双胞胎由于必须站一起,所以将他们看作一个人(捆绑法),则将排队看作4个人无顺序排,再乘上2个双胞胎的站列情况,即为A(4,4)∗A(2,2) = 48
————未完待续,多多支持,还有N题等你解锁~~~————