【题解】P11458 [USACO24DEC] All Pairs Similarity P
https://www.luogu.com.cn/problem/P11458
由于 \(\frac{|a\operatorname{and} b|}{|a\operatorname{or} b|}=\frac{|a|+|b|}{|a\operatorname{or} b|}-1\)。
考虑 \(\sum_{j=1}^n \frac{|a_j|}{|a_i \operatorname{or} a_j|}=\sum_{s} \frac{1}{|s|}\sum_{a_i \operatorname{or} a_j=s} |a_j|\)。
OR-FWT:\(\sum_{a_i \operatorname{or} a_j=s} |a_j|=x^{a_i}\times \sum_j |a_j|x^{a_j}\)。
令后者为 \(f\)。
\(\mathtt{FWT}(x^{a_i})=\sum_{a_i\subseteq s} x^s\),\(\mathtt{FWT}(f)\) 可以预处理。
然后 \(\mathtt{IFWT}(g)=\sum_{s} x^s\sum_{t\subseteq s} (-1)^{|t|-|s|}g_t\)。
带上 \(\frac{1}{|s|}\):$\sum_{s} \frac{1}{|s|} \sum_{t\subseteq s}(-1)^{|t|-|s|} [a_i\subseteq t]f_t=\sum_{a_i\subseteq t}f_t\sum_{t\subseteq s} \frac{1}{|s|} (-1)^{|t|-|s|} $。
至此可以预处理后面那个求和,与 \(f\) 点乘并做一次后缀和。
复杂度 \(O(n+2^ww)\)。
浙公网安备 33010602011771号