最小生成树
aozil_yang
这个作者很懒,什么都没留下…
展开
-
例题11-2 UVA - 1395 Slim Span 苗条的生成树(Kruscal最小生成树)
大体题意:给出一个n(n 思路:直接枚举 起点, 然后从起点开始构造最小生成树,构造好了 就更新答案,ans = min(ans,w[r]-w[l])!每枚举一次起点 就要刷新一下并查集!详细见代码:#include#include#include#include#include#include#include#include#include#inclu原创 2016-08-17 11:35:45 · 511 阅读 · 0 评论 -
UVA 1151 Buy or Build (最小生成树)
题意:告诉你n 个点的坐标,你要在两个点之间连线,使得点全部相同,连边的费用为这两个点的欧几里得距离,你的目的是使这个费用最低,并且你有q(q 思路:全部的点相通,很明显是最小生成树。最容易想到的是,暴力枚举哪一个套餐用,哪一个套餐不用,在求最小生成树,这样会超时,因为原图是一个完全图,有100W个边。有个小优化:我们可以先求一边最小生成树,n-1个边,在n-1个边中在暴力原创 2017-03-03 22:05:16 · 432 阅读 · 0 评论 -
CCF习题 201703-4 地铁修建(dijkstra 或者 最小生成树)
题意:很水很水的一道题目, 但自己也很水, 没得全分= = ~~~求使得1和n 连通得一条路中最大路权最小值。思路:多个思路:1. 修改dijkstra,把判断距离改成判断 最大路权即可。2. 最小生成树,直接按照最小生成树做,当1和n 连通时就找到答案了,因为这时候肯定是边最小的。迪杰斯特拉版本代码:#include #include #include原创 2017-03-23 18:15:17 · 4279 阅读 · 6 评论 -
UVA 11354 Bond (最小生成树 + 树链剖分)
题意:给你一个图, q 个查询, 每个查询输出两点之间 的路径中 最大值的最小值。思路:要想路径最大值最小, 边肯定在最小生成树上。先把图建成最小生成树。那么问题就是 输出树上两点之间的 边权最大值。赤裸裸的树剖。可惜比赛时脑残没有想到 最小生成树。#include #include #include #include using namespac原创 2017-08-21 17:41:43 · 298 阅读 · 0 评论