Codeforces Round 406 (Div. 1) |
---|
Finished |
ALT is a planet in a galaxy called "Encore". Humans rule this planet but for some reason there's no dog in their planet, so the people there are sad and depressed. Rick and Morty are universal philanthropists and they want to make people in ALT happy.
ALT has n cities numbered from 1 to n and n - 1 bidirectional roads numbered from 1 to n - 1. One can go from any city to any other city using these roads.
There are two types of people in ALT:
Every person on ALT is either a guardian or a citizen and there's exactly one guardian alongside each road.
Rick and Morty talked to all the people in ALT, and here's what they got:
You need to tell Rick and Morty the minimum number of puppies they need in order to make all people in ALT happy, and also provide an optimal way to distribute these puppies.
The first line of input contains two integers n and m (2 ≤ n ≤ 2 × 104, 1 ≤ m ≤ 104) — number of cities and number of citizens respectively.
The next n - 1 lines contain the roads, i-th line contains endpoint of i-th edge, v and u (1 ≤ v, u ≤ n, v ≠ u).
The next m lines contain the information about citizens. i-th line contains two integers xi and yi (1 ≤ xi, yi ≤ n, xi ≠ yi).
In the first line of input print a single integer k, the total number of puppies they need (1 ≤ k ≤ n).
In the second line print an integer q, the number of puppies to give to citizens, followed by q distinct integers a1, a2, ..., aq, index of citizens to give puppy to (0 ≤ q ≤ min(m, k), 1 ≤ ai ≤ m).
In the third line print an integer e, the number of puppies to give to guardians, followed by e distinct integers b1, b2, ..., be, index of road of guardians to give puppy to (0 ≤ e ≤ min(n - 1, k), 1 ≤ bi ≤ n - 1).
Sum of q and e should be equal to k.
4 5
2 4
3 4
1 4
2 4
2 1
2 4
1 2
2 3
3
1 5
2 3 1
4 7
3 4
1 4
2 1
4 2
4 2
2 4
1 4
2 1
3 1
4 2
3
1 6
2 2 3
Map of ALT in the first sample testcase (numbers written on a road is its index):
Map of ALT in the second sample testcase (numbers written on a road is its index):
Name |
---|