[51nod 1766] 树上最远点对(线段树+树的直径)
题意
多次询问一个点在[a,b][a, b][a,b], 另一个点在[c,d][c, d][c,d]内的树上最远距离
有一个结论对于两个联通块S,TS, TS,T
设d(S)d(S)d(S)表示联通块直径的两个端点
那么d(S∪T)∈d(S)∪d(T)d(S∪T) ∈d(S)∪d(T)d(S∪T)∈d(S)∪d(T)
这个东西仔细想下不是很难证
然后我们用线段树维护就好了
但是每次pushup...
原创
2018-10-02 21:02:40 ·
310 阅读 ·
0 评论