题目链接
方法:最小费用最大流模版题
题目分析
题目大意
有若干个人和若干个房子,每个人走到一个房子,希望总距离最小,问最小距离
解析
实际上是一个带权的二分图匹配问题,这里使用最小费用最大流的方法来做。设置一个超级源点和一个超级汇点,然后将对应的边加上。每条边的容量为1,表示可以走或者不走,费用为距离,这样就很easy了,板子加上就过了。注意数据范围,100个人,所以至少开202个点
代码
1 |
|
Pursue excellence; Strive for perfection.
方法:最小费用最大流模版题
有若干个人和若干个房子,每个人走到一个房子,希望总距离最小,问最小距离
实际上是一个带权的二分图匹配问题,这里使用最小费用最大流的方法来做。设置一个超级源点和一个超级汇点,然后将对应的边加上。每条边的容量为1,表示可以走或者不走,费用为距离,这样就很easy了,板子加上就过了。注意数据范围,100个人,所以至少开202个点
1 | #include <set> |