二分图补充
电压
求奇环的边的交。
考虑 dfs 树,一条返祖边就意味着环。
维护边经过奇偶数量。
考虑经过一条返祖边,,会使得
再考虑 dfs 树,发现所有的环都可以被统计到。
边染色
每个点出发的边都不同颜色。求最少颜色数。
任意图:设
二分图下的 vizing 定理:
给定一张二分图,左侧有
个点,编号为 到 ,右侧有 个点,编号为 到 ,有 条无向边。
给定,你需要将每条边染色为 中的一种颜色。现在,对于第 个点,我们定义它的代价为与 点相连的边中,出现最多的颜色数减去出现最少的颜色数(如果一种颜色没有出现,我们认为它的出现次数为 )。
你需要构造一种方案,使得每个点的代价和最小。
拆点使得
考虑合并,
所以答案就是
构造方案:cf212a。
柯尼希定理
什么名字。konig
- 注意对于任意图,最小点覆盖 >= 最大匹配。
但是对于二分图是相等的。
最大独立集
- 最大独立集 =
- 最小点覆盖。
好像现在可以感性理解上面两个东西了。()
- 最大团 = 补图的最大独立集(也是显然)
最小链覆盖(DAG)
DAG 的最小链覆盖 =
注意这里链的相交/不交会影响二分图的建立。
不相交
考虑拆成入点和出点,连边。
相交
可以转化成不相交。
你就考虑
所以对图求一个传递闭包,所有可联通点加边,然后就和不相交一样了。
由于是 DAG,所以传递闭包可以按照拓扑序
证明
考虑一条边没有就是
这个图限制了一个点的出边和入边最多为
匹配一条边可以看做是合成了一条路径。
Dilworth定理
-
DAG 的最长反链大小等于最小链覆盖个数。
-
DAG 的最长链大小等于最小反链覆盖个数。
反链可以理解成补图上的链,即原图中互不联通的点。
这里链覆盖可以相交。
根据 Dilworth 定理可以把最长链大小和反链覆盖联系起来。
祭祀
求最长反链大小 = 最小链覆盖 = n - 最大匹配。
先来考虑一下第三问怎么求,考虑强制一个点选入反链。
在图中删去这个点和它能到达和被到达的点后,再求一遍答案,如果此时答案比第一问小 1,说明这个点可以选入答案。
2 根据 3 来走即可。
二分图博弈
游戏
考虑建二分图,如果是完全匹配那么一定后手剩。
因为完全匹配下,后手一定会走先手的点的匹配,而后手一定先走完。
考虑不完全匹配,先手可以走一个非特殊点,这样后手一定会走一个匹配下的点,先手选择这个点对应的匹配点。
只需要证明后手下一步走的点一定在最大匹配上。
这是比较显然的,可以考虑替换最大匹配边。
然后这个东西,对于任意最大匹配的所有非匹配点都是成立的。
Hall 定理
不会一点啊。
令左部点点数小于右边。
对于任意左部点的集合,如果满足所有
推论:
- 二分图的最大匹配为
,S 是左部点子集。
等价于:
证明考虑转化成最小点覆盖即可。
看这些习题,发现 Hall 定理一般用于简化问题,实际上和最后的实现二分图匹配关系不大。(?)
HDU 6667
其实就是一个运用,等价成:
分类讨论,使得
LOJ6062
?
arc076d
答案就是
根据等价式可得求:
由于是补区间,写出来是:
那么
考虑按
LYZ-Ice Skates
原来是 9 个月之前做的 S 组模拟赛题。现在秒了。
首先这是一个二分图匹配的形式,用 hall 定理得到充要:
转化一下形式就可以线段树维护了。
HNOI 2018 省队集训 Day 5 Party
最难的是统计答案,其它比如树剖、bitset 都是显然。
由于每种颜色只能被一个人选,想到二分图匹配。
设每个人有
由于
带权 Hall
撸猫
转化成一个模型:左边 2^n,右边猫。
连接的边:每种情况连 pr、每只猫的一共出量为 c*p[i]。
带权匹配,要求右边漫流;
考虑带权 hall,满足 w|S右| <= w|N(S右)|
那么对于右边每种选取的情况,暴力计算 N(S) 和 S 即可。N(S) 可以高维前缀和算 。
二分图匹配
匈牙利:
Dinic:
但是还没到 dinic,再等等。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Deepseek官网太卡,教你白嫖阿里云的Deepseek-R1满血版
· 2分钟学会 DeepSeek API,竟然比官方更好用!
· .NET 使用 DeepSeek R1 开发智能 AI 客户端
· DeepSeek本地性能调优
· 一文掌握DeepSeek本地部署+Page Assist浏览器插件+C#接口调用+局域网访问!全攻略