1950 - 家族会议
描述

森精灵是个很长寿的种族,一个森精灵家族内部往往很多代人共同生活。

这一天族长要召开家族会议,他召集自己d代以内的直系子孙都来参加。之后每位子孙又会召集自己 

 d 代内的直系子孙召开家庭内部会议。现在已知家族中的成员关系,你能求出对于每位成员所召开的会议,分别有多少名成员需要参加吗?

为了方便统计,我们设家族成员编号为0~n-1,其中族长编号为 0。


输入

第一行输入两个数 n,d,其中 n 表示族长与其直系子孙的总人数, d 表示 d 代以内的子孙需要参会;

第二行输入 n-1 个数,第 i个数 a[i] 表示编号为i 的成员的父辈是谁,以空格隔开;


输出

输出共 n 行,每行一个数,表示第i-1 位成员(族长或其子孙)所召开的会议,需要参加的人数。

样例

输入

5 1
0 0 2 2

输出

3
1
3
1
1
提示

对于 30% 的数据, 2\leq n \leq 30,1 \leq d \leq n-1, 0\leq a[i] \leq n-1

对于 100% 的数据, 2\leq n \leq 10^5,1 \leq d \leq n-1,0\leq a[i] \leq n-1

样例中的家族关系如图所示, d=1 ,则族长(成员 0)的会议有 0,1,2 ,共 3 人参加;

成员 1,3,4的会议只有本人参加;

成员 2 的会议有 2,3,4,共 3 人参加。


题目参数
时间限制 1 秒
内存限制 128 MB
提交次数 1
通过次数 1