【学习笔记】Dilworth 定理的构造性证明

本文详细介绍了Dilworth定理的构造性证明过程,通过转化成二分图并结合Konig定理,阐述如何求解DAG的最长反链和最小链覆盖。文中使用最大匹配和最小点覆盖的概念,利用Dinic算法构造解决方案,并提供简化后的构造方法。
摘要由CSDN通过智能技术生成

发现自己并不会 Dilworth 定理的构造性证明(原题要求输出方案),于是去 Wiki 上学习了一下。下文是我参照 Wiki 上的证明思路口胡的一个证明。

附例题:Codeforces 590E

Dilworth 定理: DAG 的最长反链大小等于最小链覆盖大小。
反链是指从图中的一个点的集合,使得集合内点两两不可达;链覆盖是指用若干条可以相交的链覆盖图中所有的点。

证明:

  1. 首先考虑如何求 DAG 的最小链覆盖。

    传递闭包,转化成用若干条不能相交的链进行覆盖。然后给每个点拆成两个点 \((u,u')\),分别代表入点和出点,对于原图任何一条边 \((u,v)\),从 \(u\)\(v'\) 连边,最终的答案就是 \(n\) (图的点数)减去该二分图的最大匹配数。这是因为一条匹配边意味着边两端的点可以被放在同一条链中,且入点和出点保证了每个点的入度和出度都不超过 \(1\).

    利用这种方法,我们可以求出 DAG 最小链覆盖的大小,并得到一种将二分图最大匹配的方案和 DAG 最小链覆盖的方案建立对应的方法。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值