만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

주유소

시간 제한3.5초메모리 제한1024 MB

요약
N개 마을로 이루어진 트리에서 길이가 정확히 k인 모든 경로에 주유소가 하나 이상 있도록 주유소를 세울 최소 개수를 구합니다.
난이도

보통10점 중 7점

유형
동적 계획법, 트리
정답자
아직 제출이 없습니다

문제

KOI 국가는 NN개의 마을로 이루어져 있고, 각 마을에는 11번부터 NN번까지 번호가 붙어 있다. 도로는 N−1N - 1개 있으며, 각 도로는 서로 다른 두 마을을 직접 잇는다. 도로에도 11번부터 N−1N - 1번까지 번호가 붙어 있고, ii번 도로는 xix_i번 마을과 yiy_i번 마을을 잇는다. KOI 국가의 임의의 두 마을 사이에는 경로가 정확히 하나 존재한다.

xx번 마을에서 yy번 마을까지의 경로는 xx번 마을, z1z_1번 마을, z2z_2번 마을, ⋯\cdots, ztz_t번 마을, yy번 마을 순서로 나열한 마을의 수열이다. 이 수열은 다음 두 조건을 만족해야 경로가 된다.

  • 수열에서 인접한 두 마을 사이에 도로가 있다.
  • 같은 마을이 수열에 두 번 이상 나오지 않는다.

경로의 길이는 경로가 이용하는 도로의 수이며, t+1t + 1이다.

KOI 국가의 법에 따라 주유소는 다음 조건을 만족하도록 설치해야 한다.

  • 길이가 kk인 경로에는 주유소가 설치된 마을이 적어도 하나 있어야 한다.

위 조건을 만족하면서 주유소 개수가 가장 적도록 마을을 골랐을 때, 설치해야 하는 주유소 개수의 최솟값을 구하여라.

입력

첫 번째 줄에 마을의 개수 NN과 값 kk가 공백으로 구분되어 주어진다. 두 번째 줄부터 N−1N - 1개의 줄에 걸쳐 각 도로가 잇는 두 마을의 번호 xix_i와 yiy_i가 공백으로 구분되어 주어진다.

출력

첫 번째 줄에 설치해야 하는 주유소 개수의 최솟값을 출력한다.

제한

  • 2≤N≤2000002 \le N \le 200000
  • 1≤k≤N−11 \le k \le N - 1
  • 1≤xi≤N1 \le x_i \le N, 1≤yi≤N1 \le y_i \le N, xi≠yix_i \ne y_i (1≤i≤N−11 \le i \le N - 1)
  • 임의의 두 마을 사이에 경로가 정확히 하나 존재한다.
  • 길이가 kk인 경로가 적어도 하나 존재한다.
  • 주어지는 모든 수는 정수이다.

예제2

  1. 예제 1

    입력
    6 2
    1 2
    1 3
    2 4
    2 5
    4 6
    
    예상 출력
    1
    
  2. 예제 2

    입력
    7 2
    1 2
    1 3
    2 4
    2 5
    4 6
    6 7
    
    예상 출력
    2