题意:
给定一棵树,每条边都有一定的权值,q次询问,每次询问某两点间的距离。
分析:
这样就可以用LCA来解,首先找到u, v 两点的lca,然后计算一下距离值就可以了。
这里的计算方法是,记下根结点到任意一点的距离dis[],这样ans = dis[u] + dis[v] - 2 * dis[lca(v, v)]。
// File Name: 2586.cpp// Author: Zlbing// Created Time: 2013年08月19日 星期一 10时59分47秒#pragma comment(linker,"/STACK:102400000,102400000")#include #include #include #include #include #include #include