BZOJ1143[CTSC2008]祭祀river 偏序集及Dilworth定理

原创 2015年11月20日 12:43:45

这里讲一下我对偏序集的认识   如果有偏差可以评论我  我会修改

一:定义 (度娘上copy来的  不想看的可以跳过

设R是非空集合A上的一个二元关系,若R满足: 自反性、反对称性、传递性,则称R为A上的偏序关系。

以下为定义:
非严格偏序,自反偏序
给定集合S,“≤”是S上的二元关系,若“≤”满足:
自反性:∀a∈S,有a≤a;
反对称性:∀a,b∈S,a≤b且b≤a,则a=b;
传递性:∀a,b,c∈S,a≤b且b≤c,则a≤c;
则称“≤”是S上的非严格偏序或自反偏序。
严格偏序,反自反偏序
给定集合S,“<”是S上的二元关系,若“<”满足:
反自反性:∀a∈S,有a≮a;
非对称性:∀a,b∈S,a<b ⇒ b≮a;
传递性:∀a,b,c∈S,a<b且b<c,则a<c;
则称“<”是S上的严格偏序或反自反偏序。
严格偏序与有向无环图(dag)有直接的对应关系。一个集合上的严格偏序的关系图就是一个有向无环图。其传递闭包是它自己。
下面是一些主要的例子[1]  :
自然数的集合配备了它的自然次序(小于等于关系)。这个偏序是全序。
整数的集合配备了它的自然次序。这个偏序是全序。
自然数的集合的有限子集 {1, 2, ..., n}。这个偏序是全序。
自然数的集合配备了整除关系。
给定集合的子集的集合(它的幂集)按包含排序。
向量空间的子空间的集合按包含来排序。
一般的说偏序集合的两个元素 x 和 y 可以处于四个相互排斥的关联中任何一个: 要么 x < y,要么 x = y,要么 x > y,
要么 x 和 y 是“不可比较”的(三个都不是)。全序集合是用规则排除第四种可能的集合: 所有元素对都是可比较的,
并且声称三分法成立。自然数、整数、有理数和实数都关于它们代数(有符号)大小是全序的,而复数不是。这不是说复数不能全序排序;
比如我们可以按词典次序排序它们,通过 x+iy < u+iv 当且仅当 x < u 或 (x = u 且 y < v),
但是这种排序没有合理的大小意义因为它使得 1 大于 100i。按绝对大小排序它们产生在其中所有对都是可比较的预序,
但这不是偏序因为 1 和 i 有相同的绝对大小但却不相等,违反了反对称性。


在数学中,特别是序理论中,是指配备了偏序关系的集合。
这个关系形式化了排序、顺序或排列这个集合的元素的直觉概念。
这种排序不必然需要是全部的,就是说不需要但也可以保证在这个集合内的所有对象的相互可比较性。(在数学用法中,全序是一种偏序)。
偏序集合定义了偏序拓扑



看到这里很多人会一头雾水   因为纯数学的表达太生涩了   那么我就举一个例子

              建立一个二元组(x,y)中的偏序集

             (x1,y1)<=(x2,y2)当且仅当 x1<=x2  与 y1<=y2同时成立

            则集合{(x,y) |x,y∈R }中任选两个元素  (i,j)   (k,l)  不一定有 (i,j)<=(k,l) 或 (k,l)<=(i,j)

            这就是一个偏序集

             偏序集中的元素可以任意推广,但是必须有偏序关系

好了   现在你应该对偏序集有一些认识了吧

          特别的在R中当偏序关系为<=时,任选元素a,b   必有 a<=b 或 b <= a那么我们 称这是一个全序集

二    偏序集中的概念

        链                  :    D 中的一个子集 C   满足 C 是全序集  及C中所有元素都可以比较大小

        反链              :    D 中的一个子集 B   满足 B 中任意非空子集都不是全序集  即所有元素之间都不可以比较大小

        链覆盖          :    若干个链的并集为 D ,且两两之间交集为 ∅ 

        反链覆盖      :    若干个反链的并集为 D ,且两两之间交集为∅

        最长链          :    所有链中元素个数最多的  (可以有多个最长链)

        最长反链      :    所有反链中元素个数最多的 (可以有多个最长反链

        偏序集高度  :    最长链的元素个数

        偏序集宽度  :    最长反链中的元素个数

三  Dilworth定

         最小链覆盖(使链最少)= 最长反链长度 = 偏序集宽度 

         最小反链覆盖=最长链长度=偏序集深度

现在我们看到BZOJ 1143

        题意很明显  是要求图中的最长反链长度  x<=y即为x可以到y   我们可以用Floyd预处理偏序关系

        之后我们可以构造一个二分图 对于一个点x  我们用  x1 x2分别表示它在链中关系

           若 x<=y 则建立(x1,y2)这一条边(不理解这个过程可以见下图)

       

这个是原图   然后构造二分图


显然 有N个点  二分图中的最大匹配为A   原图最小链覆盖为B

         有N-A=B

如果不懂的话可以看我的证明(可能很不严谨

            若二分图内存在增广路径(x1,y2)  则  x1   y2都没有连边   x为一条链的末尾   y为一条链的开始  又有 x<=y  所以当前的覆盖不是原图的最小链覆盖


那么对于这一题思路就已经讲完了   复杂度是O(n^3)的


版权声明:本文为博主原创文章,未经博主允许不得转载。

【bzoj1143】 CTSC2008祭祀river 二分图匹配

貌似是我想少了,二分图不止只有最大匹配,先写一些结论吧,等着总结一下。 参考:http://endlesscount.blog.163.com/blog/static/8211978720126221...
  • u012288458
  • u012288458
  • 2015年08月17日 20:03
  • 1135

[BZOJ1143][CTSC2008]祭祀river(floyed+二分图匹配)

只要心中有景、何处不是花香满径。
  • Clove_unique
  • Clove_unique
  • 2016年05月12日 11:42
  • 738

bzoj1143 祭祀 最大匹配

根据题意,如果有两个点A和B,A能到达B或者B能到达A,那么两者就只能选一个。因此,首先做一遍Floyd得到任意两个点对之间能否到达,然后连边。由于最大独立子集=n-最大匹配数,所以跑一遍最大匹配就可...
  • lych_cys
  • lych_cys
  • 2015年11月28日 11:16
  • 511

【BZOJ1143】【CTSC2008】祭祀river 传递闭包、最大点独立集(网络流写的)

题意:那个图不要看,给的没错,是有向无环图(拓扑) 题解: 对于每两点,都有一个关系————>如果传递闭包后a能到b,那么两者只能选一个。 完事了。 代码: #include #includ...
  • Vmurder
  • Vmurder
  • 2015年01月28日 07:41
  • 1611

【bzoj1143】【CTSC2008】【祭祀】【river】

题目大意 给出一幅有向图,选取一些点,这些点不能从一个点到达另一个点,求最多能选多少个点。 题解 其实我们用floyd传递闭包,知道哪些点不能同时取。显然就是求最大独立集,对偶问题是...
  • chunkitlau
  • chunkitlau
  • 2016年07月05日 20:49
  • 195

bzoj1143 祭祀 最大匹配

根据题意,如果有两个点A和B,A能到达B或者B能到达A,那么两者就只能选一个。因此,首先做一遍Floyd得到任意两个点对之间能否到达,然后连边。由于最大独立子集=n-最大匹配数,所以跑一遍最大匹配就可...
  • lych_cys
  • lych_cys
  • 2015年11月28日 11:16
  • 511

BZOJ1143 [CTSC2008]祭祀river 【二分图匹配】

1143: [CTSC2008]祭祀river Time Limit: 10 Sec  Memory Limit: 162 MB Submit: 3236  Solved: 1651 [Subm...
  • qq_38678604
  • qq_38678604
  • 2017年12月18日 13:24
  • 46

【bzoj1143】 CTSC2008祭祀river 二分图匹配

貌似是我想少了,二分图不止只有最大匹配,先写一些结论吧,等着总结一下。 参考:http://endlesscount.blog.163.com/blog/static/8211978720126221...
  • u012288458
  • u012288458
  • 2015年08月17日 20:03
  • 1135

【bzoj 1143】[CTSC2008]祭祀river(匈牙利算法)

夜雾飞花,灯笼流丽
  • reverie_mjp
  • reverie_mjp
  • 2016年11月10日 00:22
  • 140

【BZOJ1143】【CTSC2008】祭祀river 传递闭包、最大点独立集(网络流写的)

题意:那个图不要看,给的没错,是有向无环图(拓扑) 题解: 对于每两点,都有一个关系————>如果传递闭包后a能到b,那么两者只能选一个。 完事了。 代码: #include #includ...
  • Vmurder
  • Vmurder
  • 2015年01月28日 07:41
  • 1611
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:BZOJ1143[CTSC2008]祭祀river 偏序集及Dilworth定理
举报原因:
原因补充:

(最多只允许输入30个字)