题意简述
给你一个 $n$ 个点 $m$ 条边的无向图,判断是否能将一些边染色为白色,其它的染成黑色,并且没有一个纯色的环。
$n\le 501,m\le 2n$
思路
一张图有 $E$ 条边,$V$ 个点。那么,它要满足没有纯色的环,$E$ 最大值为 $2(V-1)$(此时的情况就是白色和黑色分别构成两颗生成树)。
$E\le 2V-2$,可以变成 $E-2V\le -2$。
那么我们现在总的图都要满足条件,那对于任意一个子图当然也满足条件了。我们可以这样转换:$E-2V$ 最大的子图,也满足 $E-2V\le -2$。
那如何求 $E-2V$ 最大的子图呢?把边当成点,点当成边,这就变成了最大权闭合子图问题。
(不会的百度一下)
代码
1 |
|