题目就是让你从一个点出发,经过的边权>=p,输出能到达的点中与点1最近的点的距离。输出图中与某点边权最大值<=p的点我们可以用kruskal重构树(具体而言,kruskal重构树无法解决和之类的问题)。这是因为最小生成树本身就是按边权从小到大排序的,所以会有这个最大/最小值的性质。哈哈。然后重构树的正确性是因为(以最小生成树举例)对于图上的任意两点,其在生成树上的路径边权最大值一定大于等于其其他路径边权最大值。因为如果有一条更大的边,要么已经在生成树里了,要么因为构成了环,但其他边都比他大。还有一个性质是重构树上的点边权向上递减。所以我们直接在重构树上倍增跳,跳到不能再跳的时候在子树里找就可以了。
标签:输出,点中,边权,某点,最大值,归程 From: https://www.cnblogs.com/wuhupai/p/18328224