```c++
inline int query_tree(int x, int y)
{
int res = 0;
while (top[x] != top[y])
{
if (dep[top[x]] < dep[top[y]])
swap(x, y);
res += query(1, 1, n, id[top[x]], id[x]);
x = f[top[x]];
}
if (id[x] > id[y])
swap(x, y);
if (x != y)
res += query(1, 1, n, id[x], id[y]);
return res;
}
```
这里最后不要判x!=y
by 传奇666666 @ 2020-09-04 16:49:25
@[te5555](/user/115003)
by 传奇666666 @ 2020-09-04 16:49:43
@[传奇666666](/user/103109)
谢谢dalao
by te5555 @ 2020-09-04 18:57:50