SP32856 ADAPHONE - Ada and Contact

题目描述

Ada the Ladybug 有一些住在李子树上的朋友,这些朋友的编号从 **1** 到 **N**。Ada 可以在这棵树上自由地从一个朋友走到另一个朋友的家。每当她到达一个编号为 **i** 的朋友家时,那位朋友总会请求她:「嘿,Ada!如果你遇到编号为 $i+1$ 或 $i-1$ 的朋友,请把我的电话号码传递给他们。」此外,任何获得他人电话号码的人都会将该号码转发给他已掌握号码的所有朋友。 Ada 会在这棵树上进行多次旅行(从一个朋友家到另一个朋友家),而她想让你帮忙计算每次旅行过程中能够形成多少个独立的朋友组。两个朋友组如果彼此之间没有任何人持有对方的电话号码,就是相互独立的。 **注意:** 每次旅行之间都是相互独立的,不会有之前的旅行留下的电话号码分发信息。

输入格式

第一行包含两个整数 $N$ 和 $Q$,分别代表 Ada 的朋友数量及她的旅行次数。 接下来的 $N-1$ 行,每行包含两个整数 $a, b$,表示在编号为 $a$ 的朋友和编号为 $b$ 的朋友之间有直接线路(树枝相连)。 接下来的 $Q$ 行中,每行包含两个整数 $a, b$,表示 Ada 将沿着树从编号为 $a$ 的朋友旅行到编号为 $b$ 的朋友。

输出格式

对于每个旅行请求,输出 Ada 在路径上形成的独立朋友组的数量。

说明/提示

- $1 \le N, Q \le 10^5$ - $1 \le a, b \le N$ 这段描述江更为流畅地解释了 Ada 的旅行和电话号码传递之间的关系。 **本翻译由 AI 自动生成**