摘要: 大佬博客 定义克鲁斯卡尔重构树可以维护诸如“查询从某个点出发经过边权不超过某个值的边最远所能到达的节点”或“从某点到某点所有路径的最长边的最小值”之类的问题。总之,算法处理范围有限,且多为同时包含“最大最小”、离线可二分的题目。 可与数据结构结合,以维护更复杂的数据结构。 它可以在线回答,复杂度为O 阅读全文
posted @ 2019-02-14 21:59 孑行 阅读(167) 评论(0) 推荐(0) 编辑
摘要: P1967 货车运输 思路: 将边权从大到小排序,然后建立最大生成树,在新图上求两个点的lca即可 1 #include <cstdio> 2 #include <iostream> 3 #include <cstring> 4 #include <algorithm> 5 #include <cm 阅读全文
posted @ 2019-02-14 21:48 孑行 阅读(157) 评论(0) 推荐(0) 编辑
摘要: 代码: 1 #include <cstdio> 2 #include <iostream> 3 #include <cstring> 4 #include <algorithm> 5 #include <cmath> 6 #include <cctype> 7 using namespace std 阅读全文
posted @ 2019-02-14 21:42 孑行 阅读(155) 评论(0) 推荐(0) 编辑
摘要: 代码: 1 #include <cstdio> 2 #include <iostream> 3 #include <cstring> 4 #include <algorithm> 5 #include <cmath> 6 #include <cctype> 7 #include <vector> 8 阅读全文
posted @ 2019-02-14 21:38 孑行 阅读(145) 评论(0) 推荐(0) 编辑
摘要: 用算法求最大生成树,在并查集合并时,把原本的一个根连向另一个 根改成两个根都连向一个新建的节点,并把当前正在处理的边的权值赋给这个新 节点做点权。这样形成的结构会是一棵树。 一个点的答案大致上是树的根到自己的路径上,相邻两个节点的子树叶节点 数的平方和。需要注意的是父子两个节点权值相同的情况,这个部 阅读全文
posted @ 2019-02-14 21:30 孑行 阅读(102) 评论(0) 推荐(0) 编辑
摘要: \({\color{coral}{\texttt{ 邪王真眼是最强的!}}}\) \({\color{coral}{\texttt{ 爆裂吧现实————}}}\) \({\color{coral}{\texttt{ 粉碎吧精神——}}}\) \({\color{coral}{\texttt{ 放逐这 阅读全文
posted @ 2019-02-14 20:28 孑行 阅读(348) 评论(0) 推荐(0) 编辑
摘要: 友链: 上一届学长 \(\texttt{Peter_Matthew(张开昕)}\) luogu(deprecated) github \(\texttt{Steven7(尚元睿)}\) luogu(deprecated) coding \(\texttt{Micardi(陈旭坤)}\) luogu( 阅读全文
posted @ 2019-02-14 20:25 孑行 阅读(404) 评论(1) 推荐(0) 编辑