【题解】P7342 『MdOI R4』Destiny

https://www.luogu.com.cn/problem/P7342

贡献法,从对角线出发走到 \((0,n-1)\),也就是从 \(F(x,y)=F(x,y)(\frac{1}{(1-x)(1-y)}-1)+1,F(x,y)=\frac{1-x-y+xy}{1-2(x+y-xy)}=(1-x-y+xy)\sum_{j\ge 0}2^j(x+y-xy)^j\)
提取 \([x^iy^{n-1-i}]\),先假设 \(\sum\) 前的系数是 1,枚举 \(-xy\) 的次数则有 \(\sum_{j=0}^{\infty} 2^{n-1-j}(-1)^j\binom{n-1-j}{j}\binom{n-1-2j}{i-j}\)

\[\begin{aligned} &2^{n-1}\sum_{j\ge 0}\left(-\frac{1}{2} \right)^j\binom{n-1-j}{j}\sum_{i=0}^{n-1} b_{i\bmod k}\binom{n-1-2j}{i-j}\\ =&2^{n-1}\sum_{j\ge 0}\left(-\frac{1}{2} \right)^j\binom{n-1-j}{j}\sum_{i=0}^{n-1} b_{i\bmod k}[z^i]z^j(1+z)^{n-1-2j}\\ =&2^{n-1}\sum_{i=0}^{k-1} b_{i}[z^i]\sum_{j\ge 0}\left(-\frac{1}{2} \right)^j\binom{n-1-j}{j}z^j(1+z)^{n-1-2j}\pmod {z^k-1}\\ =&(2(z+1))^{n-1}\sum_{i=0}^{k-1} b_{i}[z^i]{\color{Red}\sum_{j\ge 0}\left(-\frac{z}{2(1+z)^2} \right)^j\binom{n-1-j}{j}}\pmod {z^k-1}\\ \end{aligned} \]

考虑 \(\sum_{j\ge 0}a^j\binom{n-j}{j}\),相当于选出 \(j\) 个位置 \(1=p_0\le p_1<p_2<p_3<...<p_j< p_{j+1}=n+1\),且 \(\forall i>0,2\le p_{i+1}-p_i\)
这对应递推式 \(f_0=1,f_{i}=f_{i-1}+af_{i-2}\),可以矩阵快速幂。

现在考虑 \((1-x-y+xy)\) 如何处理,上面的做法基本只要求 \(x^{a}y^{b}\)\(a+b\) 是定值,所以可以类似做。

时间复杂度 \(O(2^3k\log k\log n)\)


这个做法还是太慢了,应该无法通过。题解使用了特征方程,并且把 \((1-x-y+xy)\) 展开做了。

posted @ 2026-05-20 09:20  TallBanana  阅读(7)  评论(0)    收藏  举报