만드는 중입니다

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

내가 그린 라이언 그림

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

요약
각 방을 작업 방으로 정했을 때, 그림 하나를 고치는 데 C_i와 작업 방까지의 거리를 더한 시간이 든다고 할 때, 총 시간 M 안에서 고칠 수 있는 그림의 최대 개수를 구합니다.
난이도

어려움10점 중 9점

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

문제

나는 라이언 그림을 그려 트리 구조의 미술관에 전시해 두었다. 미술관은 여러 방이 통로로 이어져 있고, 각 방에는 그림이 한 점씩 있다. 방을 정점으로, 통로를 간선으로 놓으면 이 그래프는 트리다. 트리의 루트는 1번 방이며, 이 방에 입장과 퇴장이 가능한 문이 있다.

누군가 침입해 모든 라이언 그림을 곰처럼 보이게 만들었다. 나는 정확히 N개의 라이언 그림을 그렸고, 그림의 종류는 K가지다. i번째 종류의 그림 하나를 수정하는 데 CiC_i의 시간이 든다. 물감이 한정되어 있어서 i번째 종류의 그림은 PiP_i개까지만 수정할 수 있다.

1번 방을 루트로 할 때, 한 방을 작업 방으로 정한다. 작업 방을 루트로 하는 서브트리 안의 그림만 수정할 수 있다. 작업을 끝낼 때마다 작업 방으로 돌아가야 하므로, 작업 방에서 그림이 있던 곳까지의 거리가 d이면 d만큼의 시간이 추가로 든다. 작업할 수 있는 시간은 M이다. 각 방을 작업 방으로 정했을 때, 작업 시간의 합이 M을 넘지 않도록 수정할 수 있는 그림의 최대 개수를 구하라.

입력

첫째 줄에 N, K, M이 주어진다. (1≤K≤N≤2×1051 \le K \le N \le 2 \times 10^5, 1≤M≤10151 \le M \le 10^{15})

이어지는 N-1개의 줄에는 통로 정보가 주어진다. i번째 줄에는 i+1번 방의 부모 방 번호와 부모 방까지의 거리가 공백으로 구분되어 있다. (1≤1 \le 통로의 길이 ≤105\le 10^5)

다음 줄에는 N개의 수가 주어지며, i번째 수는 i번 방에 있는 그림의 종류다. (1≤1 \le 그림의 종류 ≤K\le K)

다음 줄에는 K개의 수가 주어지며, i번째 수는 CiC_i다. (1≤Ci≤M1 \le C_i \le M)

다음 줄에는 K개의 수가 주어지며, i번째 수는 PiP_i다. (1≤Pi≤N1 \le P_i \le N)

출력

i번째 줄에 i번 방을 작업 방으로 했을 때 수정할 수 있는 그림의 최대 개수를 출력한다.

예제1

  1. 예제 1

    입력
    12 4 10
    1 1
    1 1
    1 2
    2 3
    5 7
    2 4
    5 1
    3 10
    4 2
    4 3
    9 5
    1 2 1 3 1 4 2 4 3 2 1 2
    1 1 1 1
    1 1 1 1
    예상 출력
    3
    3
    1
    3
    2
    1
    1
    1
    2
    1
    1
    1