二分图最大匹配的必须边.
首先可以在反图上考虑这个问题(即将边集替换为其补集).
问题变为给出一张二分图,询问删掉哪些边后最大匹配会减少,即哪些边是最大匹配的必须边.
首先用最大流跑出一个最大匹配,仅保留未满流的边做 tarjan,将每个点所属的 SCC 求出.
边 $(u,v)$ 是最大匹配的可行边,当且仅当它满流,或 $u,v$ 在相同的 SCC 中.
证明:若其满流,显然是可行边,若在相同的 SCC 中,则可以替换掉原来的一条匹配边.
边 $(u,v)$ 是最大匹配的必须边,当且仅当它满流,且 $u,v$ 在不同的 SCC 中.
证明:若其不满流,显然不是必须边,若在相同的 SCC 中,则可以被其他边替换掉.
1 | //%std |