banner
xihale

xihale

github
pixiv
pixiv
tg_channel

浅谈 Catalan 数

引言#

CatalanCatalan 的精髓是推递推式,很多问题的递推式形式上与 CatalanCatalan 的递推式相同,这说明他们有着共同之处,可以使用 CatalanCatalan 数的思考方法,这对我们解决问题来说算是打开了一个新的窗口。

定义#

  • A:序列长度|A|: 序列长度
  • 一组解:一串合法序列一组解: 一串合法序列
  • operator +:序列拼接operator\ +:序列拼接

二叉树种类数问题#

分治:左 + 自己 + 右

我们有如下定义

Hn={1,n=0,1i=1nHniHi1,n2H_n=\begin{cases} 1, n=0,1\\ \sum_{i=1}^nH_{n-i}\cdot H_{i-1}, n\geq 2 \end{cases}

合法数列#

nn+1+1nn1-1 构成 2n2na1,a2,,a2na_1,a_2, \cdots ,a_{2n},其部分和满足 a1+a2++ak0(k=1,2,3,,2n)a_1+a_2+ \cdots +a_k \geq 0(k=1,2,3, \cdots ,2n) 对与 nn 该数列为?

乍一看好像很难,但是我们仔细分析一下

好像不方便直接得到结果,那就容斥原理

我们用总量减去不合法量

总量#

nn+1+1 放在 长 2n2n 数列里面,其他的都是 1-1 ,故总量为 (2nn)\binom{2n}{n}

不合法量#

首先我们考虑不合法的情况
而只有一种情况会导致不合法
那就是在某个前缀和的过程中,部分和首次小于零。

构造不合法量#

AA 是一组合法解,BB 是任意序列 (同时满足 BB 中缺少且仅缺少一个 1-1 且有 B=n1|B|=n-1)
A+B=2n1|A|+|B|=2n-1

显然此时有 H=(A,1,B)H=(A, -1, B) ,这是一组不合法解

Warning

此时虽然是不合法解,但是此时 HH+1+11-1 的数量都为 nn

怎么区分合法解和不合法解呢?
我们设 (取反 BB 序列)

Bi^={+1,Bi=11,Bi=+1\hat{B_i}=\begin{cases} +1, B_i=-1\\ -1, B_i=+1 \end{cases}

那么现在 B^\hat{B} 就是一个多了且仅多了一个 1-1 的序列 (从少一个到多一个了呢)

那么现在 H^=(A,1,B^)\hat{H}=(A, -1, \hat{B}) 就是一组有 n+1n+11-1n1n-1+1+1 的序列

好像区分开了,来验证一下可行性
考虑是否能做到不重不漏

仔细思考 B^\hat{B}BB 是一个双射集合
也就是说 所有的不合法解都对应一个如此这般的 H^\hat{H}

那么如何统计呢?
枚举 +1+11-1 的数量都可以

那就是 (2nn1)\binom{2n}{n-1}(2nn+1)\binom{2n}{n+1}

最终解#

Hn=(2nn)(2nn1)H_n=\binom{2n}{n}-\binom{2n}{n-1}

加载中...
此文章数据所有权由区块链加密技术和智能合约保障仅归创作者所有。