![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
克鲁斯卡尔
zhhx2001
这个作者很懒,什么都没留下…
展开
-
codevs1403(dp+克鲁斯卡尔)
判断是否处于灾害期那个地方,思路错了一下午,否则我的prim的做法虽然慢,但是就应该还可以过上7个点,结果wa了那么多因为一个边的灾害期不一定就一次,我的做法虽然可以保证一次,但是多次无法处理导致我还以为我 的prim错了呢,不过练了对拍和代码能力和bzoj那个套最短路的一个样 对了,一定要注意细节,不要以为他不会卡你细节!!!!,也许就是这细节决定你的成败,永远不要原创 2016-07-11 19:24:23 · 337 阅读 · 0 评论 -
bzoj1821(克鲁斯卡尔)
hzwer上的,知道是用克鲁斯卡尔,但是思路还是自己猜出来的思路:感觉就是猜出来的,因为所有的点集之间的距离是他们所含点对之间的最短距离,对于例题中的图,想像一下,在这几个点集之间相互连边就是连最短的边,他们就会联通,实际上本题就是,把所有的点按最小距离连起来,找到最大的k-1条边,把他们删掉,其中这些边最小的距离就是所求的距离。一共要插入n-1条边,找最大的k-1条边原创 2016-07-09 12:50:46 · 322 阅读 · 0 评论 -
bzoj3732(同货车运输,倍增lca+最小生成树)
双向边数组要开大一倍#include#include#include#include#includeusing namespace std;const int maxn=20009;struct aa{ int u,v,dis; bool operator <(const aa &b) const { return dis<b.dis; }}bian[maxn*原创 2016-07-21 15:21:52 · 493 阅读 · 0 评论 -
bzoj1601(MST+优秀建图==好题)
Farmer John已经决定把水灌到他的n(1 刚开始并没有想到是最小生成树,尽管曾经考虑过,但是感觉无法描述整个题目的所需决策。并没有多想。实际上,就是每个水库要么选择自己这里建造水库,要么选择连一条边。我们想如果所有的水库最终都选择好了一个决策的话,那么整个图就是,分成m块,每一块有一个点是自己建造水库的。其他都是顺着边连到这个点的。也就是在这个子图当中做最小生成树。这之后就原创 2016-09-09 18:54:52 · 889 阅读 · 0 评论 -
bzoj1083(MST)
其实就是求最小瓶颈生成树,中最大边权,根据性质可知,最小生成树本身就是一个最小瓶颈生成树。还说,使整个图联通,还要求最少的边(这还用问,肯定是n-1条边)这道题教会我们,题目会有用来迷惑人的信息,注意题目的本质是什么#include#include#include#includeusing namespace std;struct aa{ int to,from原创 2016-08-19 15:35:35 · 293 阅读 · 0 评论 -
bzoj2429(MST,最小瓶颈生成树)
就是一个最小生成树,实际上是最小瓶颈生成树#include#include#include#includeusing namespace std;int n,m,t[505],tot;int x[1055],y[1055],fa[1055];struct aa{ int x,y; double dis; bool operator <(const aa &b) c原创 2016-08-19 19:49:28 · 510 阅读 · 0 评论