摘要: 在做网络流题目的时候,我们时常因为无法正确建图而遗憾错过本应该的AC。今天通过一些题目,我好好记录一下自己对最大流、最小割的学习感受。Hdu 1565,题意:给你一个矩阵,矩阵上每个点上都有一个数字,现在要你在矩阵中取一些数字,使得取得的数字和最大!规则:相邻的格子不能同时取,即取了一个以后,它四周的数字便不能再取了。分析:(题目实际就是求一个无向图的最大点权独立集)这种方格的题目,我们最容易想到二分图,最大流等等。事实上,也确实是用最大流来解二分图。首先建图:我们将行列相加为奇数的点与S相连,容量就为该点的点权,行列相加为偶数的点与T相连,容量同样为该点的点权。然后,所有与S相连的点,将它与 阅读全文
posted @ 2011-07-31 22:34 Accept 阅读(3416) 评论(0) 推荐(0) 编辑
摘要: 知道图论的一些定义和性质对我们解题实在是太有帮助了,我就吃多了这亏,现在一点点的总结,以后还会跟新无向图:点覆盖集:无向图G的一个点集,使得该图中所有边都至少有一个端点在该点集中。最小点权覆盖集:在带点权无向图G中,点权和最小的点覆盖集。点独立集:无向图G的一个点集,使得任何两个在点集中的点在图G中都不相邻。最大点权独立集:在无向带权图G中,点权和最大的点独立集。最小点权覆盖集=最小割=最大流最大点权独立集=总权-最小点权覆盖集有向图:最小路径覆盖:就是找出最小的路径条数,使之成为P的一个路径覆盖. 路径覆盖与二分图匹配的关系(必须是没有圈的有向图) 最小路径覆盖=|P|-最大匹配数;而在无向 阅读全文
posted @ 2011-07-31 14:43 Accept 阅读(1022) 评论(0) 推荐(0) 编辑
摘要: 首先,最小路径覆盖=总节点数-最大匹配数。这个应该已经是路人皆知了。所谓最小路径覆盖,是指在一个有向图中,找出最少的几条路径,用它们来覆盖全图这里说的值得注意的地方,如果有向图的边有相交的情况,那么就不能简单的对原图求二分匹配了举个例子,假设有图:1->2 2->5 2->3 4->2,事实上,这其实就是两条边:1->5 4->3,节点2只是他们的一个交点如果只是简单的在原图的基础上求二分匹配,那么得到的匹配答案是2,最小路径覆盖答案便是5-2=3。可是随便一看都能看看出端倪,这个图中,只需要两个点便可以探索完整个地图,这里最小路径覆盖数明显是2。问题究竟出 阅读全文
posted @ 2011-07-31 11:53 Accept 阅读(5547) 评论(3) 推荐(5) 编辑