만드는 중입니다

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

마법의 나무

시간 제한2초메모리 제한512 MB

요약
루트가 있는 트리에서 각 정점의 열매가 하루만 익을 때, 가지를 자를 날을 골라 거둘 수 있는 주스의 최댓값을 구합니다.
난이도

어려움10점 중 8점

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

문제

마법의 나무는 정점이 11부터 nn까지 번호로 구분된 루트 있는 트리이며, 정점 11이 루트이다. 과일은 루트를 제외한 정점에만 열리고, 정점마다 과일은 최대 하나이다. 0일에는 익은 과일이 없다. 각 과일은 하루 동안만 익어 있다.

jj번째 과일은 열리는 정점 vjv_j, 익는 날 djd_j, 그날 수확했을 때 얻는 마법 과즙의 양 wjw_j가 주어진다.

과일은 나무의 가지를 잘라서 수확한다. 매일 원하는 만큼 가지를 자를 수 있다. 잘려 나간 부분은 땅에 떨어지고, 그 안에 있는 익은 과일을 모두 거둘 수 있다. 익지 않은 채 떨어진 과일은 버려지며 과즙을 얻지 못한다.

형식적으로는 매일 간선을 임의로 골라 지울 수 있다. 그러면 나무는 여러 연결 요소로 나뉜다. 루트를 포함하지 않는 요소를 모두 제거하고, 그 안의 익은 과일을 수확한다.

나무와 mm개의 과일이 주어졌을 때, 수확할 수 있는 과즙의 최대 합을 구하라.

입력

첫 줄에 세 정수 nn, mm, kk가 주어진다 (2≤n≤1000002 \le n \le 100000, 1≤m≤n−11 \le m \le n-1, 1≤k≤1000001 \le k \le 100000). kk는 과일이 익을 수 있는 가장 큰 날이다.

다음 n−1n-1개의 줄에 p2,…,pnp_2, \ldots, p_n이 한 줄에 하나씩 주어진다. ii가 22부터 nn까지일 때, 정점 pip_i (1≤pi≤i−11 \le p_i \le i-1)는 정점 ii의 부모이다.

마지막 mm개의 줄에는 각각 vjv_j, djd_j, wjw_j가 주어진다 (2≤vj≤n2 \le v_j \le n, 1≤dj≤k1 \le d_j \le k, 1≤wj≤1091 \le w_j \le 10^9). 모든 vjv_j는 서로 다르다.

출력

수확할 수 있는 과즙의 최대 합을 한 줄에 정수 하나로 출력한다.

힌트

이 문제의 예제에서 최적해는 다음과 같다. 4일에 정점 4와 5 사이의 간선을 잘라 익은 과일에서 1을 수확한다. 같은 날 정점 1과 2 사이의 간선을 잘라 정점 3의 과일에서 5를 수확한다. 7일에는 아무것도 하지 않는다. 9일에 정점 1과 4 사이의 간선을 잘라, 더 이상 익어 있지 않은 정점 4의 과일은 버리고 정점 6의 과일에서 3을 수확한다.

예제1

  1. 예제 1

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