最小生成树
小菜鸡加油
菜鸡
什么都能折磨
展开
-
1095F - Make It Connected(贪心+MST)
https://codeforces.com/problemset/problem/1095/F思路:若没有提供的边时,怎么建图最小:我们把点权值由小到大排序,然后后面的依次连最小的。有边那就连进去建新图,于是最多m+n-1条边。mst直接可做了。#include<iostream>#include<vector>#include<queue>#include<cstring>#include<cmath>#include&原创 2021-04-13 11:54:35 · 86 阅读 · 0 评论 -
D. Design Tutorial: Inverse the Problem(思维+构造+最小生成树判定树合法)
https://codeforces.com/problemset/problem/472/D思路:对于一个成环的三点,我们可以令其任意挑两边作为边,另外两个没有直接相连的点作为第三边的答案,若答案合法,无论怎样其较小两边之和等于第三边。于是我们每次在环中挑较小边,然后构成树,最后在新的树上跑完所有两点间距离来check原图任意两点距离O(n^2).可以的话可以上LCA(nLogn+mlogn) #include<iostream>#include<vector>#原创 2021-04-12 21:39:26 · 712 阅读 · 0 评论 -
ACM Contest and Blackout(非严格次小生成树板子+LCA)
https://vjudge.net/problem/UVA-10600/origin板子题。求非严格次小生成树树有大致有两种。一种是暴力,枚举不在最小生成树的边,然后跑n-1次最小生成树。(O(n^2logn)大致)或者dfs找最小生成树环上的最长边替换掉。借xayata_大佬的图。优化的办法就是在最小生成树中,看成一颗树,然后化成有根树,用倍增的思路融合ST的思路,维护u,v的lca(u,v)的最长边。一个倍增数组记录父亲,一个倍增数组记录(u,lca(u,v))之间的最长边原创 2020-10-05 20:43:45 · 164 阅读 · 0 评论 -
G. Path Queries(带权并查集+kruskal思想)
https://codeforces.com/problemset/problem/1213/G题意翻译题目描述\mathsf E \color{red}\mathsf{ntropyIncreaser}EntropyIncreaser有一棵nn个点的树,每条边都带权。她会问你mm个问题,每次给你一个正整数qq,求最大权值不大于qq的简单路径数量。需要注意的是,对于一个点对(u,v)(u,v)只记一次,单独一个点不算路径。输入格式第一行两个正整数n,mn,m,...原创 2020-09-13 23:11:54 · 282 阅读 · 0 评论 -
旅行(构造+最大生成树)
链接:https://ac.nowcoder.com/acm/contest/7329/C来源:牛客网题目描述DK 有一个无向图 G,这个无向图有 n 个点 m 条边你需要确定一个大小为 n 的排列 a,使 ∑i=2ndis(ai−1,ai)\sum\limits_{i=2}^n \operatorname{dis}(a_{i-1},a_i)i=2∑ndis(ai−1,ai) 最大,求这个最大值dis(u,v)\operatorname{dis}(u,v)dis(u,v) 表示从.原创 2020-09-12 13:01:17 · 163 阅读 · 0 评论 -
P1550 [USACO08OCT]WATERING HOLE G
https://www.luogu.com.cn/problem/P1550题目描述Farmer John 的农场缺水了。他决定将水引入到他的nn(1 \leq n \leq 3001≤n≤300)个牧场。他准备通过挖若干井,并在各块田中修筑水道来连通各块田地以供水。在第ii号田中挖一口井需要花费W_iWi(1 \leq W_i \leq 10^51≤Wi≤105)元。连接ii号田与jj号田需要P_{i,j}Pi,j(1 \leq P_{i,j} \leq 10^51≤P...原创 2020-07-26 21:00:22 · 360 阅读 · 0 评论