연료

아직 제출이 없습니다시간 제한1초메모리 제한128 MB

문제

예전에 바이트랜드의 nn개 도시는 촘촘한 양방향 도로망으로 서로 연결되어 있었다. 바이트랜드의 왕은 도로의 수를 줄이기로 결정했고, 그 결과 지금 바이트랜드에는 도시 쌍을 잇는 양방향 도로가 n1n-1개만 남아 있다. 그래서 임의의 두 도시 사이에는 정확히 하나의 경로만 존재한다. 즉, 도로망은 하나의 트리를 이룬다. 모든 도로의 길이는 같다.

바이트아사르는 연료 탱크에 도로를 정확히 mm개 지날 수 있는 만큼의 연료가 들어가는 자동차로, 방문하는 서로 다른 도시의 수가 최대가 되는 여행을 계획하려 한다. 여행은 어느 도시에서 시작해도 되고, 출발한 도시로 돌아올 필요 없이 어느 도시에서 끝나도 된다. 방문 도시 수를 최대로 하는 동안 같은 도로를 같은 방향으로든 반대 방향으로든 여러 번 지나도 된다. 가득 채운 한 탱크의 연료로 방문할 수 있는 서로 다른 도시의 최대 개수를 구하여라.

입력

첫째 줄에 두 정수 nnmm이 주어진다 (2n5000002 \le n \le 500\,000, 1m2000000001 \le m \le 200\,000\,000). 여기서 nn은 바이트랜드의 도시 수이며 각 도시는 11부터 nn까지의 번호로 구분되고, mm은 한 탱크의 연료로 지날 수 있는 도로의 수이다.

다음 n1n-1개의 줄에 바이트랜드의 도로망이 주어진다. 각 줄에는 두 정수 aabb가 주어지며 (1a,bn1 \le a, b \le n), 도시 aa와 도시 bb가 하나의 양방향 도로로 연결되어 있음을 뜻한다.

출력

한 탱크의 연료로 방문할 수 있는 서로 다른 도시의 최대 개수를 나타내는 정수 하나를 한 줄에 출력한다.

힌트

위 예시에서 바이트아사르는 최대 다섯 개의 서로 다른 도시를 방문할 수 있다. 이 입력에서 다섯 개의 도시를 방문하는 경로는 여러 가지가 있으며, 예를 들어 45756524 \to 5 \to 7 \to 5 \to 6 \to 5 \to 2 또는 32125653 \to 2 \to 1 \to 2 \to 5 \to 6 \to 5 등이 있다.