没学过最大权独立集,但是想到了最大权闭合子图,建图和正解差不多。
实际上,这个图要是一个二分图,原因是题目条件。
如果图有奇环,则会发现无论怎么选都无法满足题目条件,所以图是二分图
转化以后,枚举较小大小的一边的点是否被选,贪心选择另一边的点即可获得35分。
在考场上想到了最大权闭合子图。这道题在a性质上有i->i+n/2的边,这意味着对于i和i+n/2这两个点只能选择恰好一个。
在选择的过程,首先把所有点选上。
如果选择了一个左边的点,则右边的所有点都不能选择,需要减去一些值。在图上连二分图对应的inf边即可。
最大权独立集=点权和-最小权独立集。
建图的方法也是类似的。
s->x连权值,x->y连inf,y->t也连权值。再求最小割。
s集合中的左边点和t集合的右边点就是答案。
实际上,如果想要最大化点数,只要在每个点的权值加上inf即可。