紫书第11章例题解题总结

写一个紫书第11章例题解题总结吧,都偷懒好几天了。。


做题情况:

题目 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
情况 0 + +1 + + +3 +2 + +1 + + -2 -4 0 0

11.1 & 11.2 & 11.3 再谈树,最小生成树,最短路问题


eg1. 大模拟。。。(情况:0 未做,失败)
eg2. 最小生成树+暴力(+, 2288Byte)
eg3. 这道题有意思,核心的观察是发现方案只需要在最小生成树与给出的套餐中选择,直接将复杂度降到了O(2^q * n)(+1,4165Byte有模板)
eg4. 关系的传递闭包,裸题,就是要给名字编号,而有了set和Map这根本不是问题( +, 2357Byte有模板)
eg5. Floyd的又一应用,说明了Floyd可以维护具有结合律的信息(+,1947Byte有模板)
eg6. 隐式图的搜索,很奇怪的是用第七章的优先队列搜索是会Wrong Answer的,只能用Dijkstra。。。不知道有没有大神可以解释一下(+3, 2630Byte有模板)


11.4 网络流初步

之后进入网络流大坦克状态,之前没学过,接触那么多知识感觉挺吃力的,即使是“初步”,只讲了FF, EK在最大流和最小费用最大流中的应用,复杂度一个是指数级,一个是$O(nm^2)$的,更常用的Dinic,ISAP, HLPP都没有讲,但是也让本蒟蒻感受到被碾压

题目都很巧妙,但是代码量随便写写不带模板都轻松2000+,而且不好调试
eg7. 二分图最大基数匹配+Floyd,这道题花了我好长时间!网络流的算法还是要慢慢学,经常写才能记住(+2, 2992Byte)
eg8. 这道题真是经典好题!!!巧妙根据行列关系建二分图,转化为最大流问题(+, 2432Byte)
eg9. 好题!!拆点法,巧妙将每个点只访问一次的不易处理的条件转化为易于处理的容量限制!(+1,2547Byte)
另:网络流的题初始化较为麻烦,需要注意!好多题都是在初始化上出问题导致RE,邻接表边的计数忘记清零极其难发现,测不出来,交上去会发生数组越界,当时调试了好久
Eg10. 好题!!又给了我们一种建立二分图模型的思路:每一个元素对应唯一确定的后继(+, 2761Byte)
eg11. 就是平平常常的Dijkstra。。挺简单的(+, 1727byte)
eg12. 好题!!建立最小割的方法简直把我看呆了!!但是一直WA找不到错误QAQ(-2,3980Byte)
eg13. 好题!!看似和网络流毫无关系的题目,结果竟然可以认为是把“出度”作为网络运输的物品!本题的细节处理也很麻烦,可能有重边自环什么的,导致我调试了两个小时都没调出来,uDebug上有重边自环的样例都通过了,但是还是WAQAQ(-4,3901Byte)
eg14. 一道暴力的最小生成树。。写起来会比较麻烦,看一会想不想写吧(0
eg15. 看起来很强势的最大费用循环流问题。。等我把其他东西都消化透了再看把(0

猜你喜欢

转载自blog.csdn.net/qq_41255467/article/details/81950726