헛간에서 달아난 소

아직 제출이 없습니다시간 제한1초메모리 제한128 MB

문제

목장에서 젖을 짤 시간이 되었지만, 소들이 모두 달아나 버렸습니다! 소들을 다시 모으려면 각 소가 얼마나 멀리 갈 수 있었는지 미리 파악해 두어야 합니다.

목장에는 $1$번부터 $N$번까지 번호가 매겨진 $N$개의 목초지가 있고 ($1 \le N \le 200{,}000$), 이 목초지들은 $N - 1$개의 양방향 길로 연결되어 있습니다. 헛간은 $1$번 목초지에 있으며 헛간에서 모든 목초지로 갈 수 있으므로, 목초지들은 헛간을 뿌리로 하는 트리를 이룹니다.

각 소는 아침에 자기 목초지에서 출발합니다. 소는 헛간에서 멀어지는 방향으로만 이동하며(헛간 쪽으로는 절대 되돌아가지 않습니다), 게을러서 이동한 거리의 합이 $L$을 넘지 않습니다. 각 목초지에 대해, 그곳에서 출발한 소가 도달할 수 있는 서로 다른 목초지가 몇 개인지(출발한 목초지 자신을 포함하여) 구하세요.

거리 값이 매우 커질 수 있으므로 64비트 정수로 저장해야 합니다.

입력

  • 첫째 줄: 두 정수 $N$과 $L$ ($1 \le N \le 200{,}000$, $1 \le L \le 10^{18}$).
  • 둘째 줄부터 $N$째 줄까지: $i$번째 줄에는 두 정수 $p_i$와 $l_i$가 주어집니다. $p_i$ ($1 \le p_i < i$)는 $i$번 목초지에서 헛간으로 가는 최단 경로에서 바로 다음 목초지, 즉 $i$번 목초지의 부모 목초지이고, $l_i$ ($1 \le l_i \le 10^{12}$)는 $i$번 목초지와 $p_i$번 목초지를 잇는 길의 길이입니다.

출력

  • $1$째 줄부터 $N$째 줄까지: 한 줄에 정수 하나씩 출력합니다. $i$번째 줄의 수는, 헛간($1$번 목초지)에서 반드시 더 멀어지는 방향으로만 길을 따라가며 이동한 총 거리가 $L$ 이하가 되도록 할 때 $i$번 목초지에서 도달할 수 있는 목초지의 개수입니다.

힌트

예제에서 $1$번 목초지의 소는 $1$, $2$, $4$번 목초지에 숨을 수 있습니다. $2$번 목초지의 소는 $2$, $3$번 목초지에 숨을 수 있습니다. $3$번과 $4$번 목초지는 헛간에서 가장 멀리 떨어져 있어, 그곳의 소는 제자리에 머무를 수밖에 없습니다.