#3711. 连通块 (connect)
连通块 (connect)
题目描述
给定一棵包含 个节点的无根树,节点编号为 。
对于一个非空节点集合 ,如果由 中所有节点以及它们之间原有的树边构成的子图连通,则称 是一个连通点集。
接下来有 次询问。每次给出两个节点 ,请计算同时包含 和 的连通点集数量。
当 时,只要求所选连通点集包含节点 。
答案对 取模。
输入格式
在文件 connect.in 中读入。
第一行两个整数 ,分别表示节点数量和询问数量。
接下来 行,每行两个整数 ,表示树上的一条边。
接下来 行,每行两个整数 ,描述一次询问。
输出格式
在文件 connect.out 中输出。
对于每次询问输出一行,表示同时包含 的连通点集数量对 取模后的结果。
样例
样例输入 #1
10 10
2 1
3 1
4 3
5 4
6 5
7 6
8 7
9 4
10 4
9 2
5 6
9 8
3 8
3 2
5 7
4 10
3 7
7 9
4 6
样例输出 #1
10
51
8
12
21
34
40
24
16
48
样例输入 #2
36 1
1 2
2 3
2 4
2 5
2 6
2 7
2 8
2 9
2 10
2 11
2 12
2 13
2 14
2 15
2 16
2 17
2 18
2 19
2 20
2 21
2 22
2 23
2 24
2 25
2 26
26 27
26 28
28 29
28 30
30 31
30 32
30 33
33 34
33 35
35 36
1 1
样例输出 #2
0
样例 2 解释
实际方案数不为 ,但其对 取模后的结果为 。
数据范围
本题共 个测试点,每点 分。
| 测试点编号 | 额外限制 |
|---|---|
| 所有询问均满足 | |
| 无额外限制 |
对于全部数据,,,输入的 条边保证构成一棵树。
其他限制
- 时间限制:;
- 空间限制:。