도로 색칠

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

요약
리컬 u에서 수도로 가는 경로의 모든 도로를 색 c로 칠합니다. 이후 정확히 m개의 도로가 칠해진 색 개수를 각 질의마다 출력합니다.
난이도

어려움10점 중 8점

유형
트리, 세그먼트 트리, 해시맵, 구현
정답자
아직 제출이 없습니다

문제

RUN 나라에는 11번부터 nn번까지 번호가 붙은 nn개의 도시가 있다. 일부 도시 쌍은 양방향 도로로 연결되어 있다. 도로는 모두 n−1n-1개이고, 임의의 두 도시 사이에는 유일한 경로가 존재한다.

11번 도시는 수도이다. 처음에 모든 도로에는 색이 없다. RUN 나라의 왕 Alex는 다음과 같은 질의를 QQ번 수행하라고 한다.

  • u c mu\ c\ m: 도시 uu, 색 cc, 정수 mm이 주어진다. uu에서 수도까지의 유일한 경로에 있는 모든 도로를 색 cc로 칠한다. 이미 색이 있는 도로도 색 cc로 바꾼다. 색칠한 뒤, 정확히 mm개의 도로가 칠해진 색의 개수를 구한다.

QQ개의 질의가 주어질 때, 각 질의의 두 번째 부분에 대한 답을 구하라.

입력

입력의 첫 줄에는 n, C, Qn,\ C,\ Q (1≤n, C, Q≤200,0001\leq n,\ C,\ Q\leq 200,000)가 공백 하나를 사이에 두고 주어진다. 이는 각각 RUN 나라의 도시 수, 가능한 색의 수, 질의의 수이다. 다음 n−1n-1개의 줄에는 두 정수 u, vu,\ v (1≤u, v≤n1\leq u,\ v\leq n)가 주어지며, 이는 도시 uu와 도시 vv를 직접 연결하는 양방향 도로가 있음을 뜻한다.

다음 QQ개의 줄에는 질의가 하나씩 주어진다. 각 질의는 문제에 설명된 대로 33개의 정수 u, c, mu,\ c,\ m으로 이루어진다. (1≤u≤n1\leq u\leq n, 1≤c≤C1\leq c\leq C, 0≤m≤n−10\leq m\leq n-1)

출력

QQ개의 줄을 출력한다. 각 줄에는 해당 질의의 답을 나타내는 정수 하나를 출력한다.

예제1

  1. 예제 1

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