【题解】P13275 [NOI2025] 集合
二元 GF:\(\prod_{S} (x^Uy^U+a_Sx^Uy^S+a_Sx^{S}y^{U})\)。
FWT+IFWT 得到 \(O(6^n)\) 做法。
考虑 FWT 数组的 \([x^{A}y^{B}]\) 项系数:
设 \(f_S=\prod_{S\subseteq T} (a_T+1),g_S=\prod_{S\subseteq T} \frac{2a_T+1}{(a_T+1)^2}\),那么 \([x^Ay^B]\mathtt {FWT}=f_Af_Bg_{A\cup B}\)。得到 \(O(4^nn)\) 做法。
考虑优化 IFWT 部分。高维后缀差分可以看作一个容斥,列出式子:
\[\begin{aligned}
&\sum_{S,T} [x^Sy^T]\mathtt{FWT}\times (-1)^{|S|+|T|}2^{|S\cap T|}\\
=&\sum_{S,T}f_Sf_Tg_{S\cup T}(-1)^{|S|+|T|}2^{|S|+|T|-|S\cup T|}\\
=&\sum_{S,T}f_Sf_Tg_{S\cup T}(-2)^{|S|+|T|}2^{-|S\cup T|}\\
=&\sum_{S,T}f'_Sf'_Tg'_{S\cup T} & //f'_S=(-2)^{|S|}f_S,g'_S=2^{-|S|}g_S\\
=&\sum_{A}g'_A\sum_{S\cup T=A} f'_Sf'_T
\end{aligned}
\]
考虑将每个数记作 \(v\times z^k\) 避免对 0 的除法,最终 \(k\) 一定非负。那么 OR 卷积的时候记录最小的 \(k\) 即可。
浙公网安备 33010602011771号