能量树(power)
题目描述
小D梦见了一棵包含n个节点的树,这棵树包含着神秘的能量。具体来讲,对于这棵树中的一个联通块,它的能量为它拥有的节点中编号连续的最长的一段。举例来说,如果一个连通块包含了原树中编号为{1,3,4,5,7,8}的节点,那么编号连续的最长的一段为{3,4,5}。它所具有的能量值为3。
小D想要从这棵树中获得能量,但由于种种原因,小D只能从这棵树中选取一个节点数不大于k的连通块并获得它的能量值,小D想要知道他能取得的最大能量值是多少。
一棵树包含n个节点的树就是有n个点,n−1条边的连通图。
输入格式
第一行两个正整数n,k,分别表示树的大小,选取的子树允许的最大大小。
第二行到第n行,每行两个正整数u,v,表示树上有一条连接节点u和节点v的边。
输出格式
一行一个整数,表示选取的子树的能量的最大值。
样例
input1
10 6 4 10 10 6 2 9 9 6 8 5 7 1 4 7 7 3 1 8
output1
3
explanation
选择的联通块节点编号为{1,3,4,5,7,8}或{1,4,6,7,8,10}都包含3个编号连续的顶点。没有节点数大于6的连通块包含大于3个编号连续的顶点。
input2
见ex_power2.in。
output2
见ex_power2.ans。
数据范围和约定
对于10%的数据,n≤20。
对于20%的数据,n≤200。
对于40%的数据,n≤2000。
对于另外15%的数据,保证给出的树是一条链。
对于另外15%的数据,保证树随机生成。
对于100%的数据,n≤100000,k≤n。
时间限制:1s 空间限制:512MB