QOJ.ac

QOJ

Time Limit: 1 s Memory Limit: 32 MB Total points: 100

#13522. Byteasar the Travelling Salesman

Statistics

A salesman Byteasar works hard travelling over Byteotia. In past times travelling salesmen could choose on their own towns they wanted to visit and order to do so, but those times are now gone forever. From the time the Central Controlling Office for Travelling Salesmen was established every salesman gets from the Office a list of towns to visit and the order of his tour. As it usually happens with central offices, the imposed order of visiting towns has not much in common with an optimal order. Before leaving for his tour Byteasar would like to know at least how much time it will take him to visit all the towns. It is your task to compute this.

The towns of Byteotia are numbered from $1$ to $n$. The capital of Byteotia has the number $1$, and this is the place Byteasar starts on his journey from. The towns are connected by a network of two-way roads. A trip between two towns directly connected by a road always takes $1$ unit of time. From the capital one can reach any other Byteotian town. However, the road network had been designed very thriftily, so the roads never form cycles.

Task

Write a program which:

  • reads from the standard input the description of the road network in Byteotia and the list of towns that Byteasar has to visit,
  • computes the total time of Byteasar's trip,
  • writes the result to the standard output.

Input

In the first line of the standard input there is one integer $n$ equal to the number of towns in Byteotia, $1 \le n \le 30\,000$. In the following $n-1$ lines the network of roads is described. In each of these lines there are two integers $a$ and $b$ ($1 \le a,b \le n$; $a\ne b$), meaning that the towns $a$ and $b$ are connected by a road. In the line $n+1$ there is one integer $m$ equal to the number of towns Byteasar should visit, $1 \le m \le 5\,000$. In the following $m$ lines there are numbers of successive towns on Byteasar's route - one number per line.

Output

In the first and only line of the standard output there should be one integer equal to the total time of Byteasar's trip.

Example

Input

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

Output

7

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.