위임 (플래티넘)
시간 제한2초메모리 제한512 MB
트리의 간선을 길이가 K 이상인 경로로 나눌 때, 가능한 가장 큰 K를 구합니다.
문제
Farmer John의 농장은 개의 목초지()가 개의 도로로 이어져 있어서, 어떤 목초지에서든 다른 모든 목초지로 갈 수 있다. 즉 이 농장은 트리이다. 하지만 FJ는 28년 동안 트리에서 필연적으로 생기는 까다로운 알고리즘 문제를 다뤄 본 끝에, 트리 모양의 농장은 너무 복잡하다고 결론 내렸다. 그는 알고리즘 문제가 경로 위에서는 더 단순하다고 믿는다.
그래서 그는 도로들의 집합을 여러 개의 경로로 나누고, 이 경로들의 관리를 일꾼들에게 맡기려 한다. 경로의 개수는 상관하지 않는다. 다만 어떤 일꾼도 점근적으로 비효율적인 알고리즘으로 넘어갈 수 없도록, 모든 경로의 길이가 최대한 길기를 원한다.
도로들을 길이가 이상인 경로들로 나눌 수 있는 가장 큰 양의 정수 를 구하라.
입력
첫째 줄에 정수 이 주어진다.
다음 개의 줄에는 각각 공백으로 구분된 두 정수 와 가 주어지며, 이는 정점 와 를 잇는 간선을 나타낸다. 와 는 모두 범위에 있다.
출력
를 출력하라.
힌트
경로를 나누는 한 가지 방법은 다음과 같다: