[BJ United Round 3] 押韵
简要讲一些细节部分,大体思路 EI 题解说的很清楚。
第一个是 \(d=4\) 时组合数的推导。
首先问题模型是按顺序执行恰好 \(k\) 个向量 \(t\in \{(1,0),(-1,0),(0,1),(0,-1)\}\) ,求到达 \((a,b)\) 的方案数。
我们把坐标系选择 \(45°\),并且放大 \(\sqrt 2\) 倍,这样一来 \((a,b)\rightarrow (a+b,a-b)\),我们的移动向量变成了 \(\{(1,1),(-1,-1),(-1,1),(1,-1)\}\) 于是就有两维独立,算出两维分别等于 \(a\)、\(b\) 的方案相乘即可。
选 \(k\) 个 \(±1\) 和为 \(a\) 的方案可以直接组合数。
第二个是 \(d=6\) 时的递推方法。
问题模型是按顺序执行恰好 \(k\) 个向量 \(t\in \{(1,0),(-1,0),(-1,1),(0,1),(0,-1),(1,-1)\}\) ,求到达 \((a,b)\) 的方案数。
有负数不好进行生成函数操作,于是你把统一 +1 变成 \(\{(2,1),(0,1),(0,2),(1,2),(1,0),(2,0)\}\)。
现在相当于求 \(F(x,y)=y+y^2+x+xy^2+x^2+xy,G(x,y)=F(x,y)^k\) 的所有系数。
令对 \(x\) 求导得 \(G'(x,y)=kF'(x,y)F(x,y)^{k-1}\) 同乘以 \(F(x,y)\) 得到
考虑比较等式两边的 \([x^ny^m]\) 系数以列出方程
\(n[x^n y^m ]+n[x^n y^{m-2} ]+(n-1)[x^{n-1} y^m ]+(n-1)[x^{n-1}y^{m-1}]+(n+1)[x^{n+1}y^{m-1}]+(n+1)[x^{n+1}y^{m-2}]=k[x^ny^m]+2k[x^{n-1}y^m]+2k[x^{n-1}y^{m-1}]+k[x^ny^{m-2}]\)
这个方程涉及的未知数位置关系大概长这样:
.oo
o.o
oo.
然后你要递推需要的边界有 \([i,0]=[0,i]={k\choose i-k} (i\ge k), [i,k-i]={k\choose i} (i\le k)\)。
一开始我是想从左下角开始推,然后发现会出现分母等于 \(0\)。
然后一种可行的推法是从上到下、从左到右推,用上面的方程每次解出 \([x^{n+1}y^{m-1}]\) 即可。