#187. How far away
How far away
Background
本题也有多种解法~
Description
村里有n栋房屋,有一些双向道路将它们连接起来。每天人们总是喜欢这样问:“如果我想从房子A到房子B多远?” 通常很难回答。但幸运的是,这个村庄的答案始终是唯一的,因为道路的建造方式是每两栋房屋之间都有一条唯一的简单路径(“简单”意味着你不能两次访问某个地方)。您的任务是回答所有这些好奇的人。
Format
Input
第一行中都有两个数字n(2 <= n <= 40000)和m(1 <= m <= 200),房屋数和查询数。接下来的n-1行每行由三个数字i,j,k隔开,并且在一个空格中隔开,这意味着存在一条连接房屋i和房屋j的道路,长度为k(0 <k <= 40000)。从1到n标记。接下来的m条线分别具有不同的整数i和j,您可以回答房屋i和房屋j之间的距离。
Output
对于每个测试用例,输出m行。每行代表查询的答案。在每个测试用例之后输出换行。
Sample 1
Input1
3 2
1 2 10
3 1 15
1 2
2 3
Output1
10
25
Sample 2
Input2
2 2
1 2 100
1 2
2 1
Output2
100
100
Limitation
1s, 1024KiB for each test case.