
网络流
volzkzg
这个作者很懒,什么都没留下…
展开
-
Usaco 5.4.5
这道题要求删去最少的点,使得网络中给定两点不连通。 这个最少的点在图论中有具体的定义,有名称为点连通度。 那么,如何求这个点连通度呢? 我们可以考虑从前面的知识进行转化,前面有一道题目是让我们求边连通度。 那么从边连通度转化为点连通度是否可行呢?答案是可行的。 可以把在网络中的每个点p(这里p代表其中一个点),拆成两个点,p1,p2,在p1,p2之间连一条边,其容量为1. 那么对于原创 2012-03-26 20:33:57 · 475 阅读 · 0 评论 -
usaco4.4.2
题目大意: 给定一个网络,求该网络的最小割,并求割边最少的割集,并按字典序最小输出割集。 1、求最小割应该不难,根据最大流最小割定理,直接跑一趟最大流就可以了 2、第二问求割边最少的割集小闹。其实可以通过对边的容量进行修改来完成。 一般情况下,我们的容量就是输入的c,但是这里我们把它改成c*(m+1)+1,m为边的总数目 为什么这样呢? 这里有两个因素,一个是割要最小,另一个是边数要最原创 2012-03-15 17:07:02 · 678 阅读 · 0 评论 -
SPOJ_839_OPTM
最小割,该题因为要求XOR后的最小值,我们可以通过二进制的知识知道,XOR后的结果各个位置上是互不影响的,XOR只有在两数不同的时候才会得到1. 于是,我们在建图的时候可以将原图G中每个点属于V拆成31位,每位成为一个点,属于同一位的所有点构成一副新图G‘. 假如新图中任意两位所属的原图中的点相连,那么将新图中这两点连一条容量为1的边. 另外如果该位为已知位,假如它是1,那么将它与原点连一条原创 2012-03-30 13:03:04 · 3556 阅读 · 0 评论