「codeforces - 838D」Airplane Arrangements
在最后加一个空座位,将序列拆分成 “若干非空座位 + 一个空座位” 这样的段,一共会有 \(n + 1 - m\) 个段。
记 \(f_n\) 表示 \(n\) 个人最后坐到一起的方案数,记 \(F(x)\) 为 \(\{f_n\}\) 对应的 EGF,则答案为 \(m![x^m]F^{n+1-m}(x)\)。
考虑最后一个人坐的位置,容易得到如下递推式:
\[\begin{aligned}
f_n &= (n+1)\sum_{i=1}^{n}\binom{n-1}{i-1}f_{i-1}f_{n-i} \\
\frac{f_n}{(n-1)!}x^{n-1} &= (n+1)\sum_{i=1}^{n}\frac{f_{i-1}}{(i-1)!}x^{i-1}\frac{f_{n-i}}{(n-i)!}x^{n-i}
\end{aligned}
\]
将 \(n + 1\) 拆成 \((i - 1) + (n - i) + 2\),得到微分方程 \(F' = 2F^2 + 2xFF'\)。
解该方程,得 \(F = \exp(2xF)\)。
如果记 \(T(x)\) 是有根树的 EGF(即 \(T/\exp T = x\)),事实上还有 \(F(x) = T(2x)/2x\)。
求各位神仙给个双射构造。
现在代回,得:
\[\begin{aligned}
&m![x^m]F^{n+1-m}(x) \\
=&m![x^m]\left(\frac{T(2x)}{2x}\right)^{n+1-m} \\
=&m!\frac{1}{2^{n+1-m}}[x^{n+1}]T^{n+1-m}(2x) \\
=&m!2^m[x^{n+1}]T^{n+1-m}(x) \\
\end{aligned}
\]
求 \([x^n]T^k\) 是个经典问题,利用拉格朗日反演易知它为 \(\frac{k}{n}\times\frac{n^{n-k}}{(n-k)!}\)。
所以最终答案为 \(\frac{n+1-m}{n+1}\times (2(n+1))^m\)。