给出一棵树
给出m条路径
询问有多少对路径恰好在一个顶点香蕉
画图之后可以发现一个结论:
两个路径之间有交点,这个交点必定是其中一条路径的LCA。
所以,先对每条路径求LCA,称为点x。
在路径上提取出和x相邻的两个点yz,现在要求经过x不经过yz的路径条数。
画图之后发现,这个数量就是一个端点在x的子树外,一个端点在x的非yz子树内的路径条数。
即,就是经过x与x所有非yz儿子相连的边w的所有路径。
然后怎么处理...
给出一棵树
给出m条路径
询问有多少对路径恰好在一个顶点香蕉
画图之后可以发现一个结论:
两个路径之间有交点,这个交点必定是其中一条路径的LCA。
所以,先对每条路径求LCA,称为点x。
在路径上提取出和x相邻的两个点yz,现在要求经过x不经过yz的路径条数。
画图之后发现,这个数量就是一个端点在x的子树外,一个端点在x的非yz子树内的路径条数。
即,就是经过x与x所有非yz儿子相连的边w的所有路径。
然后怎么处理...