#P867. 树的路径

树的路径

题目描述

给定一棵 nn 个结点的树,点的编号为 11nn11 号点为根。树上第 ii 个点与其父亲的距离为 did_i。给定一个上限 mm,与一个编号为 uu 的点,定义 S(u,m)S(u,m)uu 的子树中,与 uu 距离不超过 mm 的点的数量。

对任意点 1in1\leq i\leq n,请计算并输出 S(i,u)S(i, u)

输入格式

  • 第一行:单个整数表示 nn
  • 第二行:单个整数表示 mm
  • 第三行到第 n+1n+1 行:第 i+1i+1 行有两个整数 pip_idid_i
    • pip_i 表示 ii 号点的父亲编号
    • did_i 表示 ii 号点到父亲的距离

输出格式

  • nn 行,每行一个整数,其中第 ii 行表示 S(i,u)S(i, u)
3
10
1 6
1 5
3
1
1
5
8
1 3
1 5
2 4
2 6
4
3
1
1
1

数据范围

  • 对于 30%30\% 的数据, n200n\leq 200
  • 对于 60%60\% 的数据, n5000n\leq 5000
  • 对于 100%100\% 的数据, 1n200,0001\leq n\leq 200,000
  • 1m10181\leq m\leq 10^{18}
  • 1di1,000,000,0001\leq d_i\leq 1,000,000,000
  • 1pi<i1\leq p_i<i