Vijos 1843 货车运输(最大生成树 + 树上倍增模板)
解法:首先想到肯定是尽量用边权大的边,所以直接用最大生成树建图即可。建完图之后,由于询问数很大,所以要想一个高效的求两点之间边权最小的边的办法。一开始想到树链剖分,感觉很麻烦,代码量巨大。想用LCA的ST表来维护,但是发现维护困难,因为是边而不是点。最后才知道要用树上倍增做。预处理出深度小的点到深度大的i点最小的边权是多少。先求出x和y的lca,然后直接求出x到lca, y到lca的最小边权。取最
原创
2017-10-14 18:41:11 ·
257 阅读 ·
0 评论