题号:NC14593
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 128 M,其他语言256 M
64bit IO Format: %lld
题目描述
喵喵是一个盆栽爱好者,他从著名盆栽大师PP那里购买了一份盆栽模板,这份盆栽模板实际上就是
一个n个节点的无根树啦。
他对照着这个模板种了n颗盆栽,其中第i颗以i为根。
可是现在盆栽越长越繁茂,于是喵喵从镇上请来了剪枝师QQ为他的盆栽剪枝,
喵喵想考验一下QQ的功力,于是准备了q个问题。
每个问题的描述是在第Ri颗盆栽上,只允许在Ai到Bi的路径上剪枝,
有多少种有效的剪枝方案呢。
Ps:有效的剪枝方案意思是,将Ai到Bi的路径上的一条边切除掉,使得第Ri颗盆栽的树高不变。
输入描述:
第一行两个数字 n, q。表示模板的大小和问题的数量(n,q<=60000)
接下来n-1行表示(n-1)条双向边。
接下来q行
每行有三个数字 Ri Ai Bi(Ri,Ai,Bi<=n)。
输出描述:
对于每个问题输出一行答案
示例1
输入
复制
5 3
1 2
1 3
2 4
2 5
1 2 3
3 5 4
3 3 5