사진 촬영
시간 제한8초메모리 제한1024 MB
1번 방에서 출발해 모든 복도를 두 번씩 지나는 순회를 짜고, 각 친구의 두 방을 모두 포함하는 구간 길이의 합을 최소화합니다.
문제
서울과학고는 개의 방과 서로 다른 두 방을 연결하는 개의 복도로 이루어진 트리 형태로 표현할 수 있다. 모든 복도는 양방향으로 이동할 수 있고, 복도를 이용해 모든 방 사이를 이동할 수 있다. 복도 하나를 통과하는 데 걸리는 시간은 이다.
브루는 졸업을 앞두고 서울과학고에서 함께 추억을 쌓은 명의 친구들과 사진을 찍으려고 한다.
브루는 명의 친구 각각과 커플 사진을 두 장씩 찍는다. 번 친구와는 번 방과 번 방에서 사진을 찍는다. 1번 방에서 번 방까지 가려면 반드시 번 방을 지나야 한다.
총 장의 사진을 찍으려면 학교 안을 이동해야 하지만, 모든 친구가 함께 움직이면 혼잡해진다. 그래서 브루와 친구들은 다음과 같이 이동하기로 했다.
먼저 브루가 서울과학고를 순회하는 계획을 세운다. 순회 계획은 다음 조건을 만족해야 한다.
- 순회는 시간 에 1번 방에서 출발하여, 시간 에 1번 방에 도착하면 끝난다.
- 모든 복도를 정확히 두 번 통과하며, 두 번의 방향은 서로 반대이다.
- 시간은 복도를 통과하는 시간만 계산한다. 사진을 찍는 시간 등은 무시한다.
편의상 순회 계획을 수열 로 나타내자. 여기서 는 시간 에 브루가 막 도착한 방의 번호이다.
다음으로 명의 친구들이 브루의 순회에 함께할 시간을 정한다. 번 친구는 순회에 합류할 시각 와 순회에서 빠져나올 시각 를 정한다. 번 친구는 번 방과 번 방에서 브루와 사진을 찍어야 하므로, 이 시간 간격 동안 브루가 두 방을 모두 방문해야 한다. 즉, , , 인 정수 와 가 존재해야 한다.
번 친구의 이동 시간은 로 정의된다. 브루는 모든 친구의 이동 시간 합을 최소화하려고 한다. 가능한 최소 이동 시간 합을 구하시오.
입력
첫째 줄에 방의 수 과 친구의 수 가 주어진다.
둘째 줄부터 번째 줄까지 번째 줄에는 번 복도가 연결하는 두 방의 번호 와 가 공백으로 구분되어 주어진다.
번째 줄부터 번째 줄까지 번째 줄에는 번 친구와 사진을 찍을 방의 번호 와 가 공백으로 구분되어 주어진다.
출력
모든 친구의 이동 시간 합으로 가능한 최솟값을 출력한다.
제한
- ()
- ()
- ()
- 입력으로 주어지는 서울과학고의 구조는 트리임이 보장된다.
- ()
- ()
- 1번 방에서 번 방까지 이동하려면 반드시 번 방을 지나야 한다. ()
- 입력으로 주어지는 모든 수는 정수이다.