【学习笔记】组合恒等式

公式

  • 对称性:

(nm)=(nnm)

  • 吸收恒等式:

(nm)=nm(n1m1)

推论:

m(nm)=n(n1m1)

(nm)(nm)=n(n1m)

本恒等式非常重要,可以将变量乘组合数转化为常量乘组合数,下有一个简单例子:

  • Vandermonde 卷积

a+b=k(na)(mb)=(n+mk)

证明使用实际含义即可,长得很类似的一个式子却有另外的结果:

a+b=k(ac)(bd)=(k+1c+d+1)

这里 c,d 是给定的,实际含义是枚举第 c+1 个数字对应第几个,不难发现是不重不漏的

这种求和形式的公式都具有可拓展性,具体而言:

Bi=Mi=1n(BiAi)=(M+n1Ai+n1)

  • 不知名公式:

i=0m(n+in)=(m+n+1n+1)

证明还是考虑实际含义

可以解决下面的量是常量的组合数求和问题

范式推导

  • k(mk)(nk)

    使用阶乘式子消掉一侧的变量

  • kk(mk1mn1)

    使用吸收公式:

    (mk)(mk1mn1)=(mn)(mkmn)

    k 转化为 m(mk) 将其展开

    剩下的部分发现后边的 (mkmn) 的下部是常量,平移变量后实际意义即可

  • k(lm+k)(s+kn)(1)k=(1)l+m(smnl)

    证明是不朴素的(但是仍然是平凡的):考虑对 l>0 归纳

    对于 l=0 时,只有 k=m 能让 LHS 有值

    而对于 l1 时,假设 l=x1 时成立,使用杨辉三角进行改写式子后两边使用归纳的结论可以去掉求和符号

    最后将 (1)l+m+1 修修变成减法挪到式子右边就又是杨辉啦!

    该公式是组合恒等式中不多的带容斥系数的公式之一

posted @   没学完四大礼包不改名  阅读(1244)  评论(3编辑  收藏  举报
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
点击右上角即可分享
微信分享提示