Dilworth定理的应用条件为偏序集,定理转化为图论语言就是偏序集哈斯图的最长反链等于其最小链点覆盖数。
对于有的问题可以通过贪心分解链求最小链点覆盖或直接求其最大反链长度,从而得出解,例如:俩个全序集的笛卡尔积构成的偏序关系。
例题:
http://poj.org/problem?id=1065
http://poj.org/problem?id=1548
http://poj.org/problem?id=3636
而对于一般的偏序集来说,并不能直接求出其最大反链的长度,只能通过求最小链点覆盖数间接求最大反链长度。此时就要利用图论的方法解决了,注意到贪心的方法在这里不再适用(如下图)。求有向无圈图的最小链点覆盖的方法:求图对应关系的传递闭包,将传递闭包看做新图,求新图的最小路径点覆盖即可。至于为什么这样是对的,可以这样理解,由于传递闭包的性质,若当前路径有可达点,它可以不经过任何中间点直接到达此点,新图的覆盖路径不会因路径交叉于一点而断开导致路径个数增加,所以新图的最小路径点覆盖等于原图的最小链点覆盖。
例题:
http://acm.hdu.edu.cn/showproblem.php?pid=3335
http://www.lydsy.com/JudgeOnline/problem.php?id=1143
一个待验证的猜想:连通有向无圈图的最小链边覆盖等于其最大拓扑有向割,可以用贪心法求解。
这里拓扑有向割是指将有向无圈图
G=(V,E)
的点集
V
划分成不交的