zoukankan      html  css  js  c++  java
  • 组合数学(转)

    错排:

    ((a_1,a_2,...,a_n))({1,2,...,n}) 的全排列,若对任意的 (iin{1,2,..,n})都有 (a_i e i),则称 ((a_i,a_2,...,a_n))({1,2,...,n}) 的错位排列。
    (D_n) 表示 ({1,2,...,n}) 的错位排列的个数,有:(D_n=n!*(1-frac1 1!+frac1 2!-frac1 3!+...+frac{(-1)^n}n!))



    圆排列:

    从 n 个不同元素中选取 r 个元素,不分首尾地围成一个圆圈的排列叫做圆排列,其排列方案数为:(frac{A(n,r)}{r})

    当 r=n 时,则为圆排列的全排列,其排列方案数为:(frac{n!}{n}=(n-1)!)



    第二类斯特林数:

    (S(n,m)) 表示有 (n) 个有区别小球,要放进 (m) 个相同盒子里,且每个盒子非空的方案数
    考虑一个很容易的递推:

    [S(n,m)=S(n−1,m−1)+m∗S(n−1,m) ]

    考虑组合意义:
    假设前面的 (n−1) 个球丢进了 (m−1) 个组,因为每个组非空,所以这个球只有一种选择,自己一组
    如果前面的球已经分成了 (m) 组,那么,这个球就有 (m) 种放法
    通项公式:
    (S(n,m)=frac 1{m!}sum_{k=0}^m(−1)^kC(m,k)(m−k)^n)

    假设盒子有区别,并且我们允许空盒的存在
    显然的,(m^n) 就是答案
    但是不允许空盒存在 所以容斥一下
    枚举当前有几个空盒子存在
    把这几个盒子选出来,也就是 (C(m,k))
    然后剩下 (m−k) 个盒子,(n) 个球可以随便放,也就是 ((m−k)n)
    最后退出来,我们盒子是没有区别的,所以除以一个 (m!)

    那么,怎么算
    考虑一下组合意义,把 (n) 个有区别的小球分给有区别的 (m) 个盒子里,允许空盒的方案数
    第二类斯特林数是什么?
    (S(n,m)) 表示 (n) 个球丢进 (m) 个相同盒子里,不允许空盒
    那枚举一下有 (i) 个盒子不是空的
    再把球丢进盒子就是 (S(n,i)∗i)

    [m^n=sum_{i=0}^mS(n,i)∗i!∗C(m,i) ]

    如果要算第二类斯特林数,除了 (n^2) 的递推有没有别的方法呢?
    显然是有的
    重新看看上面用容斥和组合意义得到的式子

    [S(n,m)=frac1{m!}sum_{k=0}^m(−1)^kC(m,k)(m−k)^n ]

    整理一下

    [egin{aligned} S(n,m)=frac1{m!}sum_{k=0}^m(−1)^kfrac{m!}{k!(m−k)!}(m−k)^n\ S(n,m)=frac1{m!}sum_{k=0}^mm!frac{(−1)^k}{k!}frac{(m−k)^n}{(m−k)!}\ S(n,m)=sum_{k=0}^mfrac{(−1)^k}{k!}frac{(m−k)^n}{(m−k)!} end{aligned}]

    可以用多项式卷积求出 (S(n,X))
    复杂度 (O(nlogn))



    放球问题:

    n个球是否有区别 m个盒是否有区别 是否允许空盒 n是否大于m 方案数 简要解释
    $$m^n$$ 每个球有m种可能
    $$m^n$$ 每个球有m种可能
    $$m!S(n,m)$$ 类比盒无区别时,再乘以盒的可能排列
    $$0$$ 盒比球多,必有空盒
    $$S(n,1)+S(n,2)+...+S(n,m)$$ 枚举有球盒的数量,再利用斯特林数
    $$S(n,1)+S(n,2)+...+S(n,n)$$ 枚举有球盒的数量,再利用斯特林数
    $$S(n,m)$$ 根据斯特林数定义
    $$0$$ 盒比球多,必有空盒
    $$C_{m+n-1}^n$$ 插板法或根据可重组合计算公式
    $$C_{m+n-1}^n$$ 插板法或根据可重组合计算公式
    $$C_{n-1}^{m-1}$$ 先给每盒放一球,然后利用n-m个球,m个盒子有空盒的解
    $$0$$ 盒比球多,必有空盒
    $$G(x)=frac{1}{(1-x)(1-x^2)...(1-x^m)}中x^n的系数$$ 母函数方法
    $$G(x)=frac{1}{(1-x)(1-x^2)...(1-x^n)}中x^n的系数$$ 母函数方法
    $$G(x)=frac{1}{(1-x)(1-x^2)...(1-x^m)}中x^{n-m}的系数$$ 母函数方法
    $$0$$ 盒比球多,必有空盒










  • 相关阅读:
    CSS3实现3D木块旋转动画
    灰色大气企业html5模板
    同程联盟景点门票动态程序 beta1.0源码
    java 创建 HMAC 签名
    左侧浮动html网页模板
    农业公司flash动画模板
    纯CSS3左右滑动开关按钮
    jQuery移动光标改变图像
    四叶草与动感线条背景矢量图
    看过的bootstrap书籍(附下载地址)
  • 原文地址:https://www.cnblogs.com/wjnclln/p/11694065.html
Copyright © 2011-2022 走看看