제설차 두 대

시간 제한1초메모리 제한128 MB

문제

도시는 교차로와 그것들을 잇는 도로로 이루어져 있다. 폭설이 내린 뒤 시장 Milan은 겨울 관리반에게 정해진 도로들의 눈을 치우게 한다. 이 도로들은 개수가 최소가 되도록 고르되, 여전히 모든 두 교차로 사이에 정확히 하나의 경로가 존재하도록 선택된다. 즉, $N$개의 교차로 위에서 트리를 이룬다.

겨울 관리반에는 Mirko와 Slavko가 각각 모는 제설차 두 대가 있다. 두 제설차는 모두 같은 교차로 $S$에서 출발한다.

제설차는 1미터를 달릴 때마다 연료 1리터를 소모하며, 이미 눈이 치워진 도로를 지나갈 때에도 마찬가지다. 두 제설차는 함께 정해진 모든 도로를 적어도 한 번씩 치워야 한다. 각 제설차는 $S$에서 시작하는 하나의 경로를 따라 이동하고, 모든 도로가 치워지면 마지막으로 도착한 교차로에 주차한다. Mirko와 Slavko가 같은 교차로에서 끝낼 필요는 없다.

두 제설차가 소모하는 연료의 최소 총합을 구하여라.

입력

첫째 줄에 두 정수 $N$과 $S$가 주어진다 ($1 \le N \le 100,000$, $1 \le S \le N$). $N$은 교차로의 수, $S$는 출발 교차로의 번호이다. 교차로는 $1$번부터 $N$번까지 번호가 매겨져 있다.

다음 $N-1$개의 줄에는 각각 세 정수 $A$, $B$, $C$가 주어진다 ($1 \le C \le 1000$). 이는 교차로 $A$와 $B$가 길이 $C$미터의 도로로 직접 연결되어 있음을 뜻한다.

출력

모든 도로의 눈을 치우는 데 필요한 연료의 최소 총합을 정수 하나로 출력한다.