소 전화망

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

문제

소들이 전화망을 구축했다. 이 문제에서 전화망은 정점이 $N$개($1 \le N \le 100{,}000$)인 무방향 트리로 볼 수 있으며, 정점에는 $1$번부터 $N$번까지 번호가 매겨져 있다. 각 정점은 전화 교환기이고, 각 간선은 두 교환기를 잇는 전화선이다. $i$번 간선은 두 정수 $A_i$와 $B_i$로 주어지며, 이 간선이 잇는 두 정점을 뜻한다($1 \le A_i \le N$, $1 \le B_i \le N$, $A_i \ne B_i$).

어떤 교환기에는 전화선이 단 하나만 연결되어 있다. 이러한 정점은 트리의 잎(leaf)이며, 각 잎은 소가 있는 목초지에 놓인 전화 부스다.

두 소가 통화하려면, 두 소가 있는 두 정점 사이의 유일한 최단 경로를 따라 통화가 전달된다. 하나의 교환기는 동시에 최대 $K$개($1 \le K \le 10$)의 통화만 처리할 수 있고, 하나의 전화선에는 같은 시각에 최대 한 개의 통화만 지나갈 수 있다.

트리의 모든 잎에 소가 한 마리씩 있을 때, 동시에 통화할 수 있는 소 쌍의 최대 개수는 얼마인가? 물론 각 소는 최대 한 번의 통화에만 참여할 수 있다.

$K = 1$인 다음 $6$개 정점 전화망을 생각해 보자.

       1   5          C1   C5
       |   |          ||   ||
       2---4   -->    |2---4|
       |   |          ||   ||
       3   6          C3   C6

정점 $1, 3, 5, 6$에 각각 소가 있다. 소 $1$이 소 $3$과 통화하고 소 $5$가 소 $6$과 통화하면 어떤 교환기도 처리 한도를 넘지 않으므로, 이 예시의 답은 $2$이다(동시에 통화하는 소 쌍이 두 쌍).

입력

  • 첫째 줄: 공백으로 구분된 두 정수 $N$과 $K$가 주어진다.
  • 둘째 줄부터 $N$번째 줄까지: $i+1$번째 줄에 $i$번 간선의 두 정점 $A_i$와 $B_i$가 공백으로 구분되어 주어진다.

출력

  • 첫째 줄: 동시에 통화할 수 있는 소 쌍의 최대 개수를 출력한다.