Raney 引理

106 阅读1分钟

1. Raney 引理

Raney 引理:对于整数数列 a1,a2,,ana_1, a_2, \ldots, a_n,如果满足 i=1nai=1\displaystyle \sum_{i = 1} ^ n a_i = 1,则 aa 的所有循环位移中,恰有一个满足所有前缀和都是正整数。

证明:令 Si=j=1iaj\displaystyle S_i = \sum_{j = 1} ^ i a_j,则 Sn=1S_n = 1,假如令 ii 作为循环位移后的开头,则前缀和序列为 SiSi1,Si+1Si1,,SnSi1,SnSi1+S1,,SnSi1+Si2,SnS_i - S_{i - 1}, S_{i + 1} - S_{i - 1}, \ldots, S_n - S_{i - 1}, S_n - S_{i - 1} + S_1, \ldots, S_n - S_{i - 1} + S_{i - 2}, S_n,容易发现前缀和序列为 Si,,SnS_i, \ldots, S_n 减去 Si1S_{i - 1},以及 1+S1,,1+Si11 + S_1, \ldots, 1 + S_{i - 1} 减去 Si1S_{i - 1},需要令前缀和序列为正整数,只能取 Si1S_{i - 1} 最小的中 ii 最大的,否则易证前缀和序列中会出现 0\le 0 的数。

2. Catalan 数

HnH_n 表示卡特兰数第 nn 项,则 HnH_n 等于长度为 2n2n 的合法括号串数量。

下面尝试利用 Raney 引理得到 HnH_n 的通项公式。

将左括号视为 11,右括号视为 1-1,则合法括号序列要求前缀和非负。在开头加一个左括号,这样数列的和为 11,并且要求前缀和为正,满足了 Raney 引理的使用条件。

这样数列的总方案数为 (2n+1n)\dbinom{2n + 1}{n}Hn=(2n+1n)2n+1=(2nn)n+1H_n = \dfrac{\dbinom{2n + 1}{n}}{2n + 1} = \dfrac{\dbinom{2n}{n}}{n + 1}

3. 例题

3.1. P6672 [清华集训2016] 你的生命已如风中残烛

考虑令 wi=wi1w'_i=w_i-1,则合法条件为 wiw'_i 的前缀和 0\ge 0,且 wi=0\displaystyle \sum w'_i=0,但是这次不能直接在前面加 11,因为不能保证最终 11 位于开头。但是发现序列的最小值为 1-1,可以尝试将序列取反后翻转,仍然要求前缀和 0\ge 0,这次序列最大值为 11,于是直接加个 11 就能满足 Raney 引理使用条件,并且能够保证序列第一个位置一定是 11。最终由于需要新加的 11 在最开头,最后除以 mn+1m-n+1 即可。

最终答案就是 (m+1)!m+1mn+1=m!mn+1\dfrac{\dfrac{(m+1)!}{m+1}}{m-n+1}=\dfrac{m!}{m-n+1}