제설차 두 대
시간 제한1초메모리 제한128 MB
S에서 출발하는 두 대의 제설차가 트리의 모든 도로를 청소할 때 필요한 최소 총 연료량을 구하는 문제입니다.
문제
도시는 교차로와 그것들을 잇는 도로로 이루어져 있다. 폭설이 내린 뒤 시장 Milan은 겨울 관리반에게 정해진 도로들의 눈을 치우게 한다. 이 도로들은 개수가 최소가 되도록 고르되, 여전히 모든 두 교차로 사이에 정확히 하나의 경로가 존재하도록 선택된다. 즉, 개의 교차로 위에서 트리를 이룬다.
겨울 관리반에는 Mirko와 Slavko가 각각 모는 제설차 두 대가 있다. 두 제설차는 모두 같은 교차로 에서 출발한다.
제설차는 1미터를 달릴 때마다 연료 1리터를 소모하며, 이미 눈이 치워진 도로를 지나갈 때에도 마찬가지다. 두 제설차는 함께 정해진 모든 도로를 적어도 한 번씩 치워야 한다. 각 제설차는 에서 시작하는 하나의 경로를 따라 이동하고, 모든 도로가 치워지면 마지막으로 도착한 교차로에 주차한다. Mirko와 Slavko가 같은 교차로에서 끝낼 필요는 없다.
두 제설차가 소모하는 연료의 최소 총합을 구하여라.
입력
첫째 줄에 두 정수 과 가 주어진다 (, ). 은 교차로의 수, 는 출발 교차로의 번호이다. 교차로는 번부터 번까지 번호가 매겨져 있다.
다음 개의 줄에는 각각 세 정수 , , 가 주어진다 (). 이는 교차로 와 가 길이 미터의 도로로 직접 연결되어 있음을 뜻한다.
출력
모든 도로의 눈을 치우는 데 필요한 연료의 최소 총합을 정수 하나로 출력한다.