[noip2016]每天爱跑步 题解

哎,最难第一道题了,昨天才刚刚刚出来,但其实仍是有些不太理解,就把本身的想法写一下,说不定哪儿天就融会贯通了呢。c++ 设每一条道路的起点为S,中点为T,它们的lca(最近公共祖先)为LCA,那么,就是求S到lca上dep[x]+w[x]==dep[S](由dep[S]-dep[x]==w[x]变形可得)的数量,lca到T是相似的,不过有一个减号,为了让它变为正,加一个数就行了,具体为dep[x]
相关文章
相关标签/搜索