【POJ3565】ANTS 题意:平面上有2*n个点,N白N黑。为每个白点找一个黑点与之连边,最后所有边不交叉。求一种方案。 题解:KM算法真是一个神奇的算法,虽然感觉KM能做的题用费用流都能做~ 本题用到的结论:当选出的点对之间的距离之和最小时,一定使所有边都不交叉 这个感觉很容易理解,自己画画图 ...
分类:
编程语言 时间:
2017-04-29 21:07:43
阅读次数:
183
http://acm.hdu.edu.cn/showproblem.php?pid=4862 选t<=k次,t条路要经过全部的点一次而且只一次。 建图是问题: 我自己最初就把n*m 个点分别放入X集合以及Y集合,再求最优匹配,然后连例子都过不了,并且事实上当时解释不了什么情况下不能得到结果。由于k此 ...
分类:
编程语言 时间:
2017-04-28 16:08:49
阅读次数:
158
目录 1 问题描述 2 解决方案 1 问题描述 何为二分图的最大权分配问题? 最大权二分匹配问题就是给二分图的每条边一个权值,选择若干不相交的边,得到的总权值最大。 2 解决方案 对于此问题的讲解,引用文末参考资料1: 解决这个问题可以用KM算法。理解KM算法需要首先理解“可行顶标”的概念。可行顶标 ...
分类:
编程语言 时间:
2017-04-20 23:22:27
阅读次数:
218
洛谷传送门 带权二分图最大权完美匹配。 裸的km算法。 注意开long long。 1 #include <cstdio> 2 #include <cstring> 3 #include <iostream> 4 5 using namespace std; 6 7 const long long ...
分类:
其他好文 时间:
2017-04-13 15:20:36
阅读次数:
289
传说在遥远的地方有一个非常富裕的村落,有一天,村长决定进行制度改革:重新分配房子。这可是一件大事,关系到人民的住房问题啊。村里共有n间房间,刚好有n家老百姓,考虑到每家都要有房住(如果有老百姓没房子住的话,容易引起不安定因素),每家必须分配到一间房子且只能得到一间房子。另一方面,村长和另外的村领导希 ...
分类:
编程语言 时间:
2017-03-21 00:02:47
阅读次数:
203
啦啦啦! KM算法是通过给每个顶点一个标号(叫做顶标)来把求最大权匹配的问题转 啦啦啦! KM算法是通过给每个顶点一个标号(叫做顶标)来把求最大权匹配的问题转 啦啦啦! KM算法是通过给每个顶点一个标号(叫做顶标)来把求最大权匹配的问题转 化为求完备匹配的问题的。设顶点Xi的顶标为A[i],顶点Yi ...
分类:
编程语言 时间:
2017-03-12 16:38:11
阅读次数:
207
二分图最大权匹配有km算法和网络流算法 km算法模板默认解决最大权匹配的问题 而使用最小费用最大流 是解决最小权匹配问题 这两种办法都可以求最大最小权 需要两次取反 TAT 感觉讲km会很难的样子... P hdu2255 km的模板题 Q hdu3488 是一个要求将所有的点连为一些环 并且边权的 ...
分类:
其他好文 时间:
2017-01-09 19:55:29
阅读次数:
211
1 #include <bits/stdc++.h> 2 #define N 1500 3 #define inf 999999999 4 using namespace std; 5 int a[N],bs[N],nx=0,ny=0,k; 6 int linky[N],lx[N],ly[N],sl ...
分类:
编程语言 时间:
2017-01-08 18:59:21
阅读次数:
230
题目:My Brute Seaco是一个漂亮的妹子,喜欢玩一款名叫My Brute的游戏。情人节快到了,starvae和xingxing都想邀请妹子过节,但是妹子只能陪一个啊,于是两个人决定打一架,用男人的方式对决,来一场My Brute吧! 一开始两个人都有n(n<100)只宠物,每个宠物有生命值 ...
分类:
编程语言 时间:
2016-09-15 13:41:13
阅读次数:
194
因为每个点只能经过一次 所以考虑拆点 这题有坑,有重边。。 KM算法 把一个点拆成入点和出点 入点在X部,出点在Y步。 如果u,v之间有路径,就在X部的u点连接Y部的v点 求完美匹配。 当完美匹配的时候,每个点都有一个入度和一个出度,可知成环。 因为完美匹配求得是最大匹配 记得把每条边权值取相反数 ...
分类:
其他好文 时间:
2016-09-13 01:25:34
阅读次数:
160