随笔分类 -  数据结构——树链剖分

摘要:题意:给出每条边权值,可以更新每条边权值,询问两个点路径的最小权值 思路:重链剖分边权化点权,让每个儿子节点继承边权。 插点权的时候比较边的两个节点的深度,插进儿子节点中。 代码: 阅读全文
posted @ 2019-07-19 10:00 KirinSB 阅读(233) 评论(0) 推荐(0) 编辑
摘要:题意:给一棵树,要求你对一个路径上的值进行加减,查询某个点的值 思路:重链剖分。 由于分了轻重儿子,我每次到重儿子的top只要O(1),经过的轻儿子最多logn条,那么我每次往上跳最多跳logn次。 所以总的路径可以分为:dfn[top[u]]到dfn[u]组成的完整路径,每次更新完走向fa[top 阅读全文
posted @ 2019-07-18 10:03 KirinSB 阅读(185) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示