집이 1번, 사무실이 n번 교차점인 나무에서, 시야 규칙에 따른 무작위 이동이 항상 10^9보 이내에 집에 도착하도록 하는 손전등의 최소 범위 d를 구한다.
어려움8트리DFS그리디그래프아직 제출이 없습니다시간 제한2초메모리 제한512 MB아르만은 최근 시골의 외딴 마을로 이사했다. 마을 지도는 트리 모양이다. 즉 n개의 교차로를 잇는 도로가 정확히 n−1개 있고, 어느 두 교차로 사이에도 도로를 따라가는 경로가 있다.
아르만은 아침마다 사무실로 가고 밤늦게 집으로 돌아온다. 밤에는 매우 어둡고 마을 도로에는 가로등이 없어서 아르만은 집으로 돌아오는 길을 찾기가 어려워졌다. 교차로에는 표지판이 없고 교차로를 서로 구별할 수도 없다. 게다가 길에서는 휴대전화 신호가 잡히지 않아 GPS도 쓸 수 없다. 이 문제를 해결하려고 아르만은 손전등을 사기로 했다. 손전등의 조명 거리는 정수이고, 조명 거리가 길수록 값이 비싸다. 조명 거리가 d인 손전등은 지금 있는 교차로에서 거리가 d 이하인 교차로를 모두 비춘다. 마을의 모든 도로는 길이가 1로 같다.
사무실에서 집으로 출발한 아르만은 지나가는 교차로마다 다음과 같이 판단한다.
무작위로 어떻게 고르더라도 도로를 최대 109개만 지나면 결국 집에 도착한다는 보장만 있다면, 아르만은 조금 더 걷는 것을 개의치 않는다. 그런 보장을 받을 수 있는 가장 싼 손전등을 사려고 한다. 아르만이 집에 도착할 수 있는 손전등의 최소 조명 거리를 구하여라.
입력은 여러 개의 테스트 케이스로 이루어진다. 각 테스트 케이스의 첫 줄에는 마을의 교차로 개수 n이 주어진다 (2≤n≤30000). 다음 n−1개의 줄에는 각각 두 정수 a, b가 주어지며, 교차로 a와 b를 잇는 도로가 있다는 뜻이다 (1≤a,b≤n). 아르만의 집은 1번 교차로이고 사무실은 n번 교차로이다. 입력은 0 하나만 있는 줄로 끝나며, 이 줄은 처리하지 않는다.
각 테스트 케이스마다, 무작위로 어떻게 고르더라도 아르만이 도로를 최대 109개만 지나 집에 도착하도록 보장하는 손전등의 최소 조명 거리 d를 한 줄에 출력한다. 손전등이 필요 없으면 0을 출력한다.