zoukankan      html  css  js  c++  java
  • 二项式反演

    先从反演原理出发,假如存在两个数列 (f, g),我们知道 (f_n = sumlimits_{i = 0} ^ n a_{n, i} imes g_i),则 (g_n = sumlimits_{i = 0} ^ n b_{n, i} imes f_i) 恒成立,那么我们由 (f) 推出 (g) 的过程叫做反演。下面我们来探讨一下上面两个式子恒成立的条件,将左边带入右边,那么有:

    [egin{aligned} g_n &= sumlimits_{i = 0} ^ n b_{n, i} sumlimits_{j = 0} ^ i a_{i, j} g_j\ &= sumlimits_{i = 0} ^ n g_i sumlimits_{j = i} ^ n b_{n, j} imes a_{j, i} end{aligned} ]

    因此,如果反演要成立,则 (sumlimits_{j = i} ^ n b_{n, j} imes a_{j, i} = [i = n]),因此我们只需要找到这样一种恒等式,就能自己构建起一套反演体系。而我们常见的二项式反演大多来自于这样两个恒等式:

    [sumlimits_{i = 0} ^ n (-1) ^ i dbinom{n}{i} = [n = 0] ]

    [sumlimits_{i = n} ^ m (-1) ^ {i - n} dbinom{m}{i} imes dbinom{i}{n} = [n = m] ]

    前一个式子的证明考虑使用二项式定理 ((x + y) ^ n = sumlimits_{i = 0} ^ n dbinom{n}{i} x ^ i y ^ {n - i}),令 (x = -1, y = 1) 即可。

    再来考虑证明后一个式子:

    [egin{aligned} sumlimits_{i = n} ^ m (-1) ^ {i - n} dbinom{m}{i} imes dbinom{i}{n} &= sumlimits_{i = n} ^ m (-1) ^ {i - n} dbinom{m}{n} imes dbinom{m - n}{i - n}\ &= dbinom{m}{n} sumlimits_{i = n} ^ m (-1) ^ {i - n} imes dbinom{m - n}{i - n}\ &=dbinom{m}{n} sumlimits_{i = 0} ^ {m - n} (-1) ^ i imes dbinom{m - n}{i} end{aligned} ]

    最后一步同样考虑二项式定理 (dbinom{m}{n} imes (-1 + 1) ^ {m - n} = dbinom{m}{n} sumlimits_{i = 0} ^ {m - n} (-1) ^ i imes dbinom{m - n}{i} = [n = m])

    那么我们能通过这两个恒等式造出那些反演公式呢?

    第一个恒等式最经典的即 (f_n = sumlimits_{i = n} ^ m dbinom{m}{i} g_i imes k_i, g_0 = sumlimits_{i = 0} ^ m (-1) ^ i f_i),也就是我们通常使用的容斥。组合意义即钦定 (i) 个位置非法其余位置随意的方案,然后计算出没有位置非法的方案。虽然上面的式子推出来与反演原理不同,但将左边带入右边最终证明是与式一是完全一致的。

    接下来是由式二带出来的反演公式:

    [f_n = sumlimits_{i = 0} ^ n (-1) ^ i dbinom{n}{i} g_i, g_n = sumlimits_{i = 0} ^ n (-1) ^ i dbinom{n}{i} f_i ]

    这是一个极其对称的式子,也非常的好记,但一般而言 (f, g) 的关系会是下面这种形式:

    [f_n = sumlimits_{i = 0} ^ n dbinom{n}{i} g_i, g_n = sumlimits_{i = m} ^ n (-1) ^ {n - i} dbinom{n}{i} f_i ]

    注意这里 (i) 可以从 (m)(一个任意的数)开始,因为运用上面的恒等式二的方法证明时不需要保证 (i)(0) 开始。

    然而,二项式定理一般出现最多的情况是下面这种:

    [f_n = sumlimits_{i = n} ^ m dbinom{i}{n} g_i, g_n = sumlimits_{i = n} ^ m (-1) ^ {i - n} dbinom{i}{n} f_i ]

    同样把左边带入右边与恒等式二本质相同的证法即可证明。其实,二项式定理扩展到高维形式也是成立的,接下来的做题记录当中将会提到。

    GO!
  • 相关阅读:
    jquery-ui Sortable拖拽排序,刷新后保持排序后的位置
    JQ动态获取URL参数
    JQ简单点赞功能
    Netty源码分析 (九)----- 拆包器的奥秘
    Netty源码分析 (八)----- write过程 源码分析
    Netty源码分析 (七)----- read过程 源码分析
    Netty源码分析 (六)----- 客户端接入accept过程
    Netty源码分析 (五)----- 数据如何在 pipeline 中流动
    Netty源码分析 (四)----- ChannelPipeline
    Netty源码分析 (三)----- 服务端启动源码分析
  • 原文地址:https://www.cnblogs.com/Go7338395/p/13592403.html
Copyright © 2011-2022 走看看