QOJ.ac

QOJ

حد الوقت: 2 s حد الذاكرة: 256 MB مجموع النقاط: 100

#22342. Pasture Walking

الإحصائيات

The $N$ cows $(2 \le N \le 1,000)$ conveniently numbered $1,\ldots,N$ are grazing among the $N$ pastures also conveniently numbered $1,\ldots,N$. Most conveniently of all, cow $i$ is grazing in pasture $i$.

Some pairs of pastures are connected by one of $N-1$ bidirectional walkways that the cows can traverse. Walkway $i$ connects pastures $A_{i}$ and $B_{i}$ $(1 \le A_{i} \le N; 1 \le B_{i} \le N)$ and has a length of $L_{i}$ $(1 \le L_{i} \le 10,000)$.

The walkways are set up in such a way that between any two distinct pastures, there is exactly one path of walkways that travels between them. Thus, the walkways form a tree.

The cows are very social and wish to visit each other often. Ever in a hurry, they want you to help them schedule their visits by computing the lengths of the paths between $Q$ $(1 \le Q \le 1,000)$ pairs of pastures (each pair given as a query $p1,p2$ $(1 \le p1 \le N; 1 \le p2 \le N)$.

Input

  • Line 1: Two space-separated integers: $N$ and $Q$
  • Lines $2,\ldots,N$: Line $i+1$ contains three space-separated integers: $A_{i}$, $B_{i}$, and $L_{i}$
  • Lines N+$1,\ldots,N+Q$: Each line contains two space-separated integers representing two distinct pastures between which the cows wish to travel: $p1$ and $p2$

Output

  • Lines $1,\ldots,Q$: Line $i$ contains the length of the path between the two pastures in query $i$.

Examples

Input 1

4 2
2 1 2
4 3 2
1 4 3
1 2
3 2

Output 1

2
7

Query 1: The walkway between pastures 1 and 2 has length 2. Query 2: Travel through the walkway between pastures 3 and 4, then the one between 4 and 1, and finally the one between 1 and 2, for a total length of 7.

Scoring

POINTS: 200

Problem credits: Neal Wu, 2007

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.