World Cup City
The city of "World Cup" has recently become a popular city to live in. There are districts, which are connected by bidirectional ways. Every district is reachable from others. The government of "World Cup" has tasks to do. For each task, they have a set of residents and they have to calculate the sum of distances between each pair of residents. (It's possible to have more than one resident from one district in each task).
Input Format
First line contains and .
Next line contains , and , there is a way between district and size of .
For each task:
First line contain , size of set.
Second line contain integers, integer is district where resident lives.
Constraints:
answer for each task
For full score: Set sizes
For 50% score: Set sizes
Output Format
For each task, print sum of distances between each pair of resident.
Sample Input
7 2
1 2 2
2 3 2
2 4 2
1 5 1
2 6 2
2 7 1
3
4 7 1
3
4 6 5
Sample Output
10
14
Explanation
First answer is:
distance(4,7) + distance(4,1) + distance(7,1) = 3 + 4 + 3 = 10.
Second answer is:
distance(4,6) + distance(4,5) + distance(6,5) = 4 + 5 + 5 = 14.
xxxxxxxxxx
with Ada.Text_IO, Ada.Integer_Text_IO;
use Ada;
procedure Solution is
-- Enter your code here. Read input from STDIN. Print output to STDOUT
end Solution