20240627总结(二分图)

A - Two Sets

CF468B Two Sets
题意:有两个集合,要把一些数分到两个集合中,若x在a集合中,那么a-x在a集合中,b集合同理

题解:贪心题,对序列从小到大排序。令a>b,考虑a-x和b-x都存在(且可以匹配)的情况下一定是选择a-x。

proof:
若选择b-x,则a-x在集合b中,那么b-(a-x)=x+(b-a)也在集合b中,发现x+(b-a)比x小,早就和a-x匹配了。

B - NP-Hard Problem

CF687A NP-Hard Problem
题意:判二分图???

弱智题

C - Love Triangles

CF553C Love Triangles
题意:构造完全图,有两种边(记为1,0),对于任意三个点之间的连边为000或011,有一些边已知,求方案数,对1e9+7取模

题解:显然0边是可以传递的,若a,b之间的边已知为0,b,c之间也为0,则a,b,c之间一定都是0边。所以先对他们缩点,缩完的连通块内必须是0边,不然无解。那么现在有一些连通块,我们只要判断连通块之间的关系。

有性质:令1边为两个联通块之间连边,则连通块之间无奇环。判掉另一部分无解。(手推一下发现一个环上的连通块i与相隔一个的连通块之间必然都是0边)

把1边也加入,令连通块的个数为k,最后答案就是\(2^{k-1}\)

D - Maximize Mex

CF1139E Maximize Mex
题意:比较难以形容,还是去原题看吧

题解:二分图好题。考虑并查集维护不好删除,但好加入。于是离线询问,把同学按照离开天数从大到小排序。同学的潜力值为左部点,社团为右部点,每次加边,跑二分图。一旦一个左部点匹配不了,这个点的编号就是当前答案

E - Vasya and Endless Credits

CF1107F Vasya and Endless Credits
题意:有一些贷款,选择一个贷款i可以立即获得a[i],在接下来的b[i]天里每天要还ki,一天最多借一个贷款,问获得的最大价值

题解:考虑一个买贷款只有两种情况,一种是还完,一种是没还完。对于还完的贷款什么时候借都不重要,对于没还完的贷款需要知道贷款到获得最大价值之间的天数。于是考虑dp,dp[i][j]表示买第i个贷款,还有j天获得最大价值。那么dp[i][j]可以由dp[k][j+1]转移(0<=k<i),但同时,我们可以选择还完第i个贷款,这样它不再受限于天数,可以放在开头,于是dp[i][j]也可以由dp[k][j]转移(0<=k<i)

F - Party

CF575C Party
题意:一张每部有 n 个点的完全二分图(n 是偶数),每条边有两种权值,要求最大权完美匹配,满足恰有n/2组匹配使用第一种权值,其余n/2组匹配使用第二种权值。

题解:很粗暴,先dfs选每一个左部点用哪一个权值,再跑KM,就是有一点点卡常

posted @ 2024-06-29 08:29  星河倒注  阅读(37)  评论(0)    收藏  举报