영역 게임
시간 제한3초메모리 제한512 MB
나무와 여러 게임이 주어질 때, 앨리스와 밥이 각자 시작점에서 이동하며 칠한 뒤 최적으로 두었을 때의 A - B 값을 구합니다.
문제
앨리스와 밥은 정점이 개인 트리에서 게임을 하기를 좋아한다. 정점에는 번호가 붙어 있다. 두 사람은 총 번의 게임을 한다.
번째 게임에서 앨리스는 정점 에서, 밥은 와 다른 정점 에서 시작한다. 처음에는 정점 가 앨리스의 색으로, 정점 가 밥의 색으로 칠해져 있고 나머지 정점에는 색이 없다.
그 뒤 두 사람은 차례대로 총 번 움직인다. 앨리스가 첫 번째로 움직이고, 밥이 두 번째로 움직이며, 이후 앨리스가 세 번째 움직임을 하는 식이다. 한 번의 움직임에서 플레이어는 인접한 정점으로 이동하고 그 정점을 칠한다. 정점은 다시 칠해질 수 있으며, 어느 순간이든 칠해진 정점의 색은 가장 최근에 그곳에 도착한 플레이어의 색이다.
최종적으로 앨리스 색 정점의 수를 , 밥 색 정점의 수를 라고 하자. 앨리스는 를 최대화하려 하고, 밥은 이 값을 최소화하려 한다. 각 게임에서 두 사람이 최적으로 플레이할 때 의 값을 구하라.
입력
입력에는 0개 이상의 테스트 케이스가 들어 있으며, 입력은 파일의 끝(EOF)에서 끝난다. 각 테스트 케이스는 다음과 같다.
첫 줄에는 두 정수 과 가 주어진다 (, ).
이어지는 개의 줄에는 각각 간선으로 연결된 두 정점 , 가 주어진다 (). 입력은 트리임이 보장된다.
마지막 개의 줄에는 각각 세 정수 , , 가 주어진다 (, , ).
모든 테스트 케이스의 합과 합은 각각 을 넘지 않는다.
출력
각 테스트 케이스에 대해 차이 값을 나타내는 정수 하나를 출력한다.