F - Many Many Paths Editorial by KumaTachiRen


\(F(R,C)=\sum_{r=0}^{R}\sum_{c=0}^{C}f(r,c)\) が求められればよいです.

二変数の形式的冪級数で考えると \[f(r,c)=[x^ry^c]\sum_{k=0}^{\infty}(x+y)^k=[x^ry^c]\frac{1}{1-(x+y)}\] です.\(x,y\) 方向それぞれに累積和をとりたいので \(\dfrac{1}{1-x},\dfrac{1}{1-y}\) をかけて \[F(R,C)=[x^Ry^C]\frac{1}{1-(x+y)}\frac{1}{1-x}\frac{1}{1-y}\] となりますがこのままでは計算が難しいです. ここで次が成り立つことに着目します: \[ \frac{1}{1-(x+y)}-\frac{1}{(1-y)(1-x)} =\frac{1}{1-(x+y)}\frac{1}{1-x}\frac{1}{1-y}\times xy \] すると次のように計算できます. \[\begin{aligned} F(R,C) &=[x^{R+1}y^{C+1}]\left(\frac{1}{1-(x+y)}-\frac{1}{(1-y)(1-x)}\right)\\ &=[x^{R+1}y^{C+1}]\left(\sum_{i=0}^{\infty}\sum_{j=0}^{\infty}\binom{i+j}{i}x^iy^j-\sum_{i=0}^{\infty}\sum_{j=0}^{\infty}x^iy^j\right)\\ &=\binom{(R+1)+(C+1)}{R+1}-1 \end{aligned}\]

posted:
last update: