아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

네트워크

시간 제한1초메모리 제한128 MB

요약
모든 리프 클라이언트가 거리 k 안에 서버를 두도록 내부 노드에 복제 서버를 가장 적게 배치합니다.
난이도

보통10점 중 7점

유형
그리디, 트리
정답자
아직 제출이 없습니다

문제

nn개의 노드로 이루어진 트리 형태의 네트워크가 있다. 내부 노드는 서버를, 말단(리프) 노드는 클라이언트를 나타낸다. 노드에는 11부터 nn까지 번호가 매겨져 있다. 서버 중 하나인 원본 서버 SS는 VOD(주문형 비디오) 서비스를 제공한다. 클라이언트의 서비스 품질을 보장하려면, 각 클라이언트에서 VOD 서버 SS까지의 거리가 주어진 값 kk를 넘지 않아야 한다. 트리에서 노드 uu와 노드 vv 사이의 거리는 uu에서 vv로 가는 경로 위의 간선 수로 정의한다.

SS까지의 거리가 kk보다 큰 클라이언트들로 이루어진 공집합이 아닌 부분집합 CC가 존재한다면, 일부 서버에 VOD 시스템의 복제본(replica)을 배치하여 모든 클라이언트가 가장 가까운 VOD 서버(원본 시스템 또는 그 복제본)로부터 거리 kk 이내에 있도록 해야 한다.

트리 네트워크와 VOD 시스템을 가진 서버 SS, 그리고 양의 정수 kk가 주어질 때, 모든 클라이언트가 원본 또는 복제본 VOD 서버 중 가장 가까운 것으로부터 거리 kk 이내에 있도록 하기 위해 필요한 복제본의 최소 개수를 구하라.

예를 들어 다음과 같은 트리 네트워크를 생각해 보자.

위 트리에서 클라이언트 집합은 {1, 6, 7, 8, 9, 10, 11, 13}, 서버 집합은 {2, 3, 4, 5, 12, 14}이고, 원본 VOD 서버는 노드 12에 있다.

k=2k = 2일 때, 노드 12에 VOD 서버가 하나만 있으면 {6, 7, 8, 9, 10}에 속한 클라이언트들이 VOD 서버로부터 거리 kk보다 멀리 떨어져 있으므로 서비스 품질이 보장되지 않는다. 따라서 하나 이상의 복제본이 필요하다. 노드 4에 복제본 하나를 배치하면 각 클라이언트에서 {12, 4} 중 가장 가까운 서버까지의 거리가 22 이하가 된다. 이 예시에서 필요한 복제본의 최소 개수는 1이다.

입력

입력은 표준 입력으로 주어진다. 입력은 TT개의 테스트 케이스로 구성된다. 테스트 케이스의 수 TT가 입력의 첫 줄에 주어진다. 각 테스트 케이스의 첫 줄에는 트리 네트워크의 노드 수를 나타내는 정수 nn (3≤n≤1 0003 \le n \le 1\,000)이 주어진다. 다음 줄에는 두 정수 ss (1≤s≤n1 \le s \le n)와 kk (k≥1k \ge 1)가 주어지며, ss는 VOD 서버의 번호, kk는 서비스 품질을 보장하기 위한 거리 값이다. 이어지는 n−1n-1개의 줄에는 각 줄마다 트리 네트워크의 간선을 나타내는 두 노드가 주어진다.

출력

각 테스트 케이스마다 정확히 한 줄을 표준 출력으로 출력한다. 그 줄에는 필요한 복제본의 최소 개수를 나타내는 정수를 출력한다.

예제4

  1. 예제 1

    입력
    2
    14
    12 2
    1 2
    2 3
    3 4
    4 5
    5 6
    7 5
    8 5
    4 9
    10 3
    2 12
    12 14
    13 14
    14 11
    14
    3 4
    1 2
    2 3
    3 4
    4 5
    5 6
    7 5
    8 5
    4 9
    10 3
    2 12
    12 14
    13 14
    14 11
    
    예상 출력
    1
    0
    
  2. 예제 2

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

    입력
    1
    10
    1 1
    1 2
    2 3
    3 4
    1 5
    5 6
    6 7
    1 8
    8 9
    9 10
    
    예상 출력
    3
    
  4. 예제 4

    입력
    1
    14
    5 2
    1 2
    2 3
    3 4
    4 5
    5 6
    7 5
    8 5
    4 9
    10 3
    2 12
    12 14
    13 14
    14 11
    
    예상 출력
    2