• 【组合数学】不相邻问题


    不相邻问题

    链式不相邻问题

    给定n颗小球,其中有m颗蓝色且其他状态相同小球,其余n-m颗为红色相同的小球。求一种线性排列使得任意两个蓝色小球不直接接触的方案总数?

    分析

    image

    image

    其中黄色区域为必须填入橘红色小球的区域,灰色区域为可填可不填区域。

    image

    换种理解角度,也就是说将m颗灰色小球变为蓝色,然后再取消掉剩余的灰色小球。

    这里一共有n-m+1个灰色小球,所以答案为\(C_{n-m+1}^{m}\)

    环形不相邻问题

    image

    有n个球排成一个环,从中取出m个不相邻的球,问有多少种解法。

    分析

    image

    1. 思考角度一:先确定一个球必须选择为蓝色,则其两边的小球不能为蓝色。所以
      image

    image

    进而我们可以将其余部分的小球转化为第一类问题——链式不相邻问题。

    由于提前确定一个蓝球,于是剩下m-1个蓝球,同时也剩下n-m-2的橘红色的球。

    \(C_{n-m-1}^{m-1}\)

    1. 思考角度二:“1.”所确定的小球不为蓝色小球,这个角度为角度一的对立事件。

    image

    则可将该球直接断开

    image

    所以此时转化成一个链式不相邻问题。

    一共有m个蓝球,n-m-1个橘红色的球的链式不相邻问题

    于是有\(C_{n-m}^{m}\)种方案

    于是总共有\(C_{n-m-1}^{m-1}+C_{n-m}^{m}\)种方案。

  • 相关阅读:
    验证手机和电话号码
    oracle取字符串长度的函数length()和hengthb()
    AngularJs教程
    nop commerce文档
    根据子查询批量删除的sql语句
    AngularJs赋值问题
    PetaPoco模糊查询
    js转换 /Date(1464671903000)/ 格式的日期的方法
    jquery-cookie插件怎么读写json数据
    executssql 函数的每一句代码的意思
  • 原文地址:https://www.cnblogs.com/BeautifulWater/p/15946064.html
Copyright © 2020-2023  润新知