2690: 云端漫步

内存限制:256 MB 时间限制:2.000 S
评测方式:文本比较 命题人:
提交:2 解决:1

题目描述

Nc“打”地鼠的数量远远超过了那位怪蜀黍的想像,所以那位怪蜀黍决定给Nckiko最高奖励:飞行能力。Nckiko觉得碉堡了,于是Nckiko飞上了天空,他们萌生了一个想法:在云端上漫步来享受飞行在天空中的时光。

很快,他们来到了一朵奇葩的云端之上,Nc发现这朵云可以用一个n个端点的树来描述,他们决定每天从这朵云上的不同端点出发(第一天从端点1开始走,第二天从端点2开始走,依次类推),沿着白云之径走到另一个端点为止。Kiko给每条白云之径定上一个幸福的值,很显然他们每次都想走幸福值和最长的路径(即从起点到树上某一点路径最长的一条)。

但是,Nckiko不愿意经历大起大落,所以决定连续几天的幸福值和波动不能超过m(即一段连续的区间并且区间的最大最小值的差不超过m),他们想知道要是这样的话他们最多能漫步多少天(即选取【l,r】这段区间满足题意,且使得r-l+1最大)?

输入

第一行两个整数n,m如题所述

接下来第2行到第n行,每行两个整数fi,vi,i行表示第i个端点的父亲是fi,且白云之径的幸福值为vi

输出

第一行一个整数ans,为最长的漫步天数

样例输入 复制

3 2 
1 1
1 3

样例输出 复制

3

提示

样例输入

样例1

3 2

1 1

1 3

样例2

3 2

1 3

2 3

样例输出

样例1

3

样例2

1

 

样例1说明

第一天从端点1出发,走到3 长度为3

第二天从端点2出发,走到3 长度为4

第三天从端点3出发,走到2 长度为4

于是可以从第一天到第三天一直漫步,最大值4,最小值3,差值为1

样例2说明

第一天从端点1出发,走到3 长度为6

第二天从端点2出发,走到3 长度为3

第三天从端点3出发,走到1 长度为6

于是只能单独选取第一天,或者第二天,或者第三天。

 

50%的数据 n<=1000

80%的数据 n<=100000

100%的数据 n<=1000000,0<=m<=10^9,0<=vi<=10^6;