随笔分类 -  图论算法 - 最短路和最小生成树

摘要:先去掉$s$和$t$做一个最小生成森林并缩点,然后把缩后的点分成三类: I. 不与$s$和$t$中任意一个点相连。若存在这类点则无解; II. 仅与$s$和$t$中的一个点相连。肯定要连上。 III. 与$s$和$t$都相连。在II型点都处理完后再处理III型点。贪心一下,每次取$s$和$t$中所剩 阅读全文
posted @ 2016-10-05 12:14 Armeria 阅读(449) 评论(0) 推荐(0)
摘要:最小生成树的裸题咯… 但是在边的编号上还是出了点问题… 以后直接上$n×n$,不虚。。 阅读全文
posted @ 2016-01-19 19:19 Armeria 阅读(134) 评论(0) 推荐(0)
摘要:本题的DP思路很好想:设f[i]为第i个怪兽被消灭所需要的最小代价,那么,f[i]=min{spl[i],ori[i]+∑j∈App[i]f[j]}然而,由于f[j]有可能也要依赖f[i],所以这个DP会带环。啊,那该怎么办呢?遇到这类问题,我们常常用SPFA来处理。怎么处理呢?我们需要更新过f[j... 阅读全文
posted @ 2016-01-06 22:20 Armeria 阅读(197) 评论(0) 推荐(0)
摘要:从这篇开始换字体。。数据范围很小。。直接暴力DP之即可。。感觉跟之前做的1597的DP很像,都是基于连续区间的DP,应该也可以用斜率优化。。还感觉跟某次CodeVS模拟赛的题的一道变态题(多面体原谅我。。)很像。。只不过那道题最后是二分图匹配。。题解详见代码注释。。我只想吐槽。。窝一遇到什么n m ... 阅读全文
posted @ 2015-12-29 22:10 Armeria 阅读(216) 评论(0) 推荐(0)
摘要:裸题。。第一问最短路,第二问最小割。。先求一发最短路图,然后建图,容量均为1,然后Dinic最大流即可。。// BZOJ 1266#include #include #include #include using namespace std; typedef long long LL; const ... 阅读全文
posted @ 2015-12-17 19:57 Armeria 阅读(247) 评论(0) 推荐(0)
摘要:直接套Dinic妥妥地TLE。。怎么办呢。。这是一个平面图。。有一些很好玩的性质。。利用这些性质,我们可以做一些奇妙的转化,把流量转化为边的长度,然后跑一遍最短路即可。。这个转化,就是对偶图。。理论依据详见2008年国家集训队周冬的论文《两极相通——浅析最大—最小定理在信息学竞赛中的应用》、然后又发... 阅读全文
posted @ 2015-12-17 19:16 Armeria 阅读(191) 评论(0) 推荐(0)