Live2D

题解 CF736D Permutations

link

Description

现在,你有一个二分图,点数为 \(2n\)

已知这个二分图的完备匹配的个数是奇数。

现在你要知道,删除每条边后,完备匹配个数是奇数还是偶数。

\(1\le n\le 2\times 10^3\)

Solution

可以想到的是,我们对于每一个边 \((u,v)\)\(G_{u,v}=1\),那么完备匹配的个数在模 \(2\) 意义下就等于 \(|G|\)

考虑删除一条边后的答案,你发现删除 \((u,v)\) 后的答案就是 \((u,v)\) 的代数余子式,又因为我们知道 \(G^{-1}=\frac{1}{|G|}G^{*}\),所以 \(G^{*}=|G|G^{-1}\),因为整个矩阵都是在模 \(2\) 意义下的,所以我们可以用 bitset 做到 \(\Theta(n^3/\omega)\)

代码就不放了。

posted @ 2021-10-07 15:36  Dark_Romance  阅读(52)  评论(0编辑  收藏  举报