博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
POJ3189 Steady Cow Assignment ——二分答案+二分图多重匹配——Pku3189
阅读量:6602 次
发布时间:2019-06-24

本文共 861 字,大约阅读时间需要 2 分钟。

改进过后的匈牙利算法即可轻松秒掉最大流的各种NB算法。不过,这种方法有一个局限,就是右边集合可以匹配多个而左边集合只能匹配一个的时候才可以用,否则只能搞神马SAP等等了。

匈牙利算法的改进:

1、存储右边集合的结果时不要只存一个,而是将所有匹配结果都存下来。

2、在找增广路时,把(res[k]=0)的条件改成(res[k,0]<max[k])

CODE

Program Stead;//By_ThispoetConst	maxn=1000;Var		pre,other,last							:Array[1..maxn*20]of Longint;	res										:Array[1..20,0..maxn]of Longint;	max										:Array[1..maxn]of Longint;	state									:Array[1..20]of Boolean;	rank									:Array[1..maxn,0..20]of Longint;	h,t,i,j,k,n,m,l,r,mid,ans,sum,all		:Longint;Function Dfs(i:Longint):Boolean;var j,k,p:Longint;begin	j:=last[i];	while j<>0 do		begin			k:=other[j];			if not state[k] then				begin					state[k]:=true;					if res[k,0]
>1; if check(mid) then begin ans:=mid; r:=mid-1; end else l:=mid+1; end; writeln(ans+1); END.

转载于:https://www.cnblogs.com/Thispoet/archive/2011/09/15/2177982.html

你可能感兴趣的文章
苹果公司的产品已用完后门与微软垄断,要检查起来,打架!
查看>>
chrome调试ajax
查看>>
centos 升级php、mysql(webtatic)
查看>>
Java并发编程:Lock
查看>>
oracle服务器和客户端字符集的查看和修改
查看>>
顶级的JavaScript框架、库、工具及其使用
查看>>
AYUI -AYUI风格的 超美 百度网盘8.0
查看>>
linux下php中文UTF-8转换Unicode方法和注意事项
查看>>
TensorFlow:tf.contrib.layers.xavier_initializer
查看>>
简明 Python 教程
查看>>
Photoshop操作指南
查看>>
用MPMoviePlayerController做在线音乐播放
查看>>
ASP.NET调用cmd命令提示符拒绝访问解决方案
查看>>
Leetcode: Construct Binary Tree from Preorder and Inorder Transversal
查看>>
嵌入式开发之字符叠加---gb2313 国标码,utf8 国际码,unicode 无码
查看>>
Java查找算法——二分查找
查看>>
如何构建微服务架构
查看>>
【前端笔记】彻底理解变量与函数的声明提升
查看>>
PHP工具箱:PHPStan —— PHP 静态代码分析工具
查看>>
iOS - 多链式动画框架 LSAnimator
查看>>