排列组合(附10道题目及解析)

一、认识C,P,A:

        A.排列        A(x,y)=(x!)/[(x-y)!]=x×(x-1)×...×(x-y+1)

        P.排列        P(x,y)=A(x,y)

        C.组合        C(x,y)=A(x,y)÷(y!)=x×(x-1)×...×(x-y+1)/(y!)=(x!)÷{(y!)×[(x-y)!]}

  例:C(5,2)=(5×4)÷(2×1)=10

  例:A(5,2)=5×4=20

  例:P(5,2)=5×4=20

  以后的题目就都用A(x,y),不用P(x,y)啦!

二、特殊情况

  C(n,1)=n

  C(n,0)=1

  C(n,n)=1

  C(n,m)=C(n,n-m)

三、题目

  T1:由1,1,2,2,3组成不同的三位数有几种?

    方法:分类讨论法

        1.选择123,有3!=6种排列

        1.选择122,有3种排列

        1.选择112,有3种排列

        1.选择113,有3种排列

        1.选择223,有3种排列

    6+4×3=18种

  答:有18种。

  -----------------------------------------------------------------

  T2:6个人,两个人组一队,总共组成3队,不区分队伍的编号,不同的组队情况有几种?

    方法:直接用C(x,y)

        这题有一个坑,就是很多人会以为直接C(6,2)×C(4,2)就行,但是答案却不是90,为什么呢?

        举个栗子:1和3一组,2和4一组,5和6一组 和 2和4一组,1和3一组,5和6一组 是一样的,                             但在刚才的式子里却被算了两遍。

        90÷(3!)就搞定了。

  答:有15种。

  -----------------------------------------------------------------

  T3:5个小朋友并排站成一列,其中有2个小朋友是双胞胎,如果要求这两个双胞胎必须相邻,则           有几种不同的方法?

    方法:用A(x,y),将那对双胞胎和合并成一个人(好奇怪啊),但是注意两个双胞胎的顺序也                     要考虑。

        A(4,4)×A(2,2)=48

  答:有48种。

  -----------------------------------------------------------------

  T4:10个三好学生名额分配到7个班级,每个班级至少有一个名额,一共有几种不同的分配方案?

    方法:隔板法。注意是名额,所以用C(x,y),不用A(x,y)

        那不就是C(9,6)嘛!

        C(9,6)=C(9,3)=84

  答:有84种。

  -----------------------------------------------------------------

  T5:有5副不同颜色的手套(共10只手套,每副手套左右手各1只),一次性从中取6只手套,请问恰好           能配成两副手套的不同取法有几种?

        C(5,2)*C(3,2)*4=120
        C(5,2)表示5种手套中选2种,左右手都选
        C(3,2)表示剩下的3种手套中选2种,各选1只
        由于每种手套都有左右手两种选择,所以要乘以4(左左,右右,左右,右左)

  答:有120种。

  -----------------------------------------------------------------

  T6:把8个同样的球放在5个同样的袋子里,允许有的袋子空着不放,问共有多少种不同的分法?
       提示:如果8个球都放在一个袋子里,无论是哪个袋子,都只算同一种分法。

        此类问题都可以归结为放球入盒问题,前面做的三好学生名额分配属于球相同,盒不相同
        问题六属于球相同,盒也相同。
        8被分成(2,2,4)与(4,2,2)是同一种分法
        这个问题也被叫做整数拆分问题
        相当于问将8分成小于等于5个数相加的形式,有几种方法,我们根据分成的数的个数分类讨          论。
        分成5个数:(1,1,1,1,4)(1,1,1,2,3)(1,1,2,2,2)分成4个数:(1,1,1,5)(1,1,2,4)(1,1,3,3)(1,2,2,3)                                  (2,2,2,2)

        分成3个数:(1,1,6)(1,2,5)(1,3,4)(2,2,4)(2,3,3)
        分成2个数:(1,7)(2,6)(3,5)(4,4)
        分成1个数:8
        一共18种

  答:有18种。(这样就行)

  -----------------------------------------------------------------

T7:副纸牌除掉大小王有52张牌,四种花色,每种花色13张,假设从这52张牌中随机抽取13张纸             牌,则至少几张牌的花色一致?

    方法:抽屉原理

        太简单了,最少每个花色3张,还剩1张,随机分配,至少4张。*★,°*:.☆( ̄▽ ̄)/$:*.°★* 。         答:4张。(完结撒花)

  -----------------------------------------------------------------

T8:概率的英文单词是Probability,如果在该单词的所有字母中任意取出一个字母,取到字符b的概         率是多少?

       更简单,长度为11的单词中有两个b,所以是2/11。没了。

   答:是2/11。

  -----------------------------------------------------------------

T9:一只口袋内装有大小相同的5只球,其中3只白球,2只黑球,现在从口袋中任取一球,每次取         出不放回。连续取两次,问:
     (1)取出的两只球都是白球的概率?
     (2)取出的两只球至少有一个白球的概率?

        (1)第一次取出白球的概率是3/5,在此基础上,第二次取出白球的概率是2/4所以第一问的答                案为3/5*2/4=3/10

        (2)第二问,求至少有一个白球,反过来就是都是黑球的概率:2/5*1/4=1/10,所以至少取到一              个白球的概率为1-1/10=9/10

  -----------------------------------------------------------------

T10:一家四口人,至少两个人生日属于同一月份的概率是?(假定每个人生日属于每个月份的概率           相同且不同人之间相互独立)

        一家四口人,至少两个人生日属于同一月份的概率等于1-(四口人都不属于同一月份的                      概率)=1-(C(12,4)*4!)/(12×12×12×12)=41/96

四、886

  • 23
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
当然可以,以下是10Python题目及其代码: 1. 编写一个程序,将一个列表中的所有元素逆序排列。 ```python lst = [1, 2, 3, 4, 5] lst.reverse() print(lst) ``` 2. 编写一个程序,计算一个字符串中每个字符出现的次数。 ```python str = "hello world" freq = {} for char in str: if char in freq: freq[char] += 1 else: freq[char] = 1 print(freq) ``` 3. 编写一个程序,将一个字符串中的所有单词首字母大写。 ```python str = "hello world" lst = str.split() for i in range(len(lst)): lst[i] = lst[i].capitalize() str = " ".join(lst) print(str) ``` 4. 编写一个程序,找出一个列表中的最大值和最小值。 ```python lst = [1, 2, 3, 4, 5] max_val = max(lst) min_val = min(lst) print("Max value:", max_val) print("Min value:", min_val) ``` 5. 编写一个程序,将一个列表中的所有偶数筛选出来。 ```python lst = [1, 2, 3, 4, 5] even_lst = [x for x in lst if x % 2 == 0] print(even_lst) ``` 6. 编写一个程序,将一个列表中的所有元素去重。 ```python lst = [1, 2, 3, 2, 4, 5, 3] unique_lst = list(set(lst)) print(unique_lst) ``` 7. 编写一个程序,将一个列表中的所有元素按照从小到大的顺序排列。 ```python lst = [1, 3, 2, 5, 4] lst.sort() print(lst) ``` 8. 编写一个程序,将一个列表中的所有元素按照从大到小的顺序排列。 ```python lst = [1, 3, 2, 5, 4] lst.sort(reverse=True) print(lst) ``` 9. 编写一个程序,将一个列表中的所有元素相加。 ```python lst = [1, 2, 3, 4, 5] total = sum(lst) print(total) ``` 10. 编写一个程序,将一个列表中的所有元素平均值计算出来。 ```python lst = [1, 2, 3, 4, 5] avg = sum(lst) / len(lst) print(avg) ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值