题目:http://www.nocow.cn/index.php/Translate:USACO/ditch
最近这段时间天气变化比较厉害,一不小心得了重感冒,每天头脑都昏昏沉沉的,然后新的一节是关于最大流的。以前还没有详细的看过这方面的资料,所以最近找了本算法导论,看了一下图论里面的最大流算法。觉得这本书讲的比网上的资料思路清晰一些,网上很多资料都是概述性的,知其然,不知所以然。所以我建议还是看看算法导论这本书,但是我发现这本书,还是有些错误的,第401页的图26-3 b)我觉得少了一条v3到v2的箭头,数值是5,然后画重点线的v3到v2的方向反了,数值是4。不知道是中文版+盗版的问题(穷啊),英文版就这样,另外405页上面的那段伪代码,也有一些需要商议的地方。
总之,最大流算法的解法思想,网上随便搜索一下,应该很多资料。我就不多费唇舌了。
这道题就是一个纯粹的最大流算法。
我采用的是Ford-Fulkerson算法。不过里面的搜索增广路径使用的是简单的深度搜索而已,没有搜索完全部的路径,然后选择最大的那个路径。可惜的是在Test7的时候,超时了,还是有点晕啊,先休息一下。晚上再考虑。
代码如下:
结果如下: