摘要: 题目:http://poj.org/problem?id=3565 首先,我们神奇地发现,没有相交边的匹配可以转化为距离和最小的匹配,所以可以使用KM算法求带权匹配; 要求的是距离和最小,所以把边权转化成负值来求最大; KM算法有点难理解,看了许多博客,总算朦胧懂了: 首先,每个点有一个“顶标”,用 阅读全文
posted @ 2018-04-17 23:26 Zinn 阅读(167) 评论(0) 推荐(0) 编辑
摘要: 题目:https://www.lydsy.com/JudgeOnline/problem.php?id=2750 以每个点作为源点,spfa跑出一个最短路图(不一定是树,因为可能很多条最短路一样长); 对于图中的每条边,需要知道从源点到边起点的方案数和边终点的size; 所以对于每张图都dfs求一遍 阅读全文
posted @ 2018-04-17 19:03 Zinn 阅读(123) 评论(0) 推荐(0) 编辑
摘要: 题目:http://poj.org/problem?id=1236 通过传输文件的特点可以看出要先求强联通分量,缩点; 问题1:即缩点后入度为0的点,从它们开始传文件可以传给所有学校; 问题2:对于所有入度为0、出度为0的点,对应连一条边;多余的随便再连一下就可以,所以答案是max(入度为0点数,出 阅读全文
posted @ 2018-04-17 18:12 Zinn 阅读(130) 评论(0) 推荐(0) 编辑
摘要: 题目:http://poj.org/problem?id=2226 把行连通块作为左部点,列连通块作为右部点,行列连通块有相交的格子就连边; 则问题转化为求最小点覆盖,即最大匹配。 代码如下: 阅读全文
posted @ 2018-04-17 17:44 Zinn 阅读(148) 评论(0) 推荐(0) 编辑