4281 - 巡检分区(patrol)

题目描述

一片自然保护区中有 n 个巡检站,以及 n-1 条双向道路。任意两个巡检站之间都恰好有一条简单路径,因此这些道路构成一棵树。每条道路的长度均为 1

为了分区检修道路,管理人员需要临时关闭恰好 s 条现有道路。关闭后,保护区被分成 s+1 个连通区域。

一个连通区域的直径,是该区域内任意两个巡检站之间距离的最大值。距离按经过的道路条数计算;只包含一个巡检站的区域直径为 0

管理人员希望让所有连通区域的直径都尽量小。请你求出所有区域直径的最大值最小可以是多少。

输入

第一行输入两个整数 n,s

接下来 n-1 行,每行输入两个整数 u,v,表示巡检站 u 与巡检站 v 之间有一条道路。

输出

输出一行一个整数,表示最优方案中各连通区域直径最大值。

样例

输入

6 2
1 2
2 3
2 4
4 5
4 6

输出

2

输入

9 3
1 2
1 3
2 4
2 5
3 6
6 7
6 8
8 9

输出

2

输入

15 5
1 2
1 3
2 4
2 5
3 6
3 7
4 8
5 9
6 10
6 11
7 12
9 13
11 14
12 15

输出

2
说明

样例说明 1

例如关闭道路 (1,2)(2,4),可以得到三个区域:

  • 只包含巡检站 1,直径为 0
  • 包含巡检站 2,3,直径为 1
  • 包含巡检站 4,5,6,直径为 2

最大直径为 2。如果要求最大直径不超过 1,则还需要继续关闭道路,因此答案为 2

样例说明 2

最优方案可能需要同时切断不同深度的道路,不能只按节点度数贪心。

数据范围

对于所有测试数据,保证:

  • 2\le n\le10^5
  • 1\le s\le n-1
  • 输入道路构成一棵树。

本题共 20 个测试点,每个测试点 5 分。

测试点编号n\le特殊性质
1\sim315
4\sim610^5A
7\sim910^5B
10100
11500
1210^3
133000
1410^4
153\times10^4
165\times10^4
17\sim2010^5

特殊性质 A:这棵树是一条,即所有节点的度数均不超过 2

特殊性质 B:这棵树是一棵菊花图,即存在一个节点的度数为 n-1

标签
题目参数
时间限制 1 秒
内存限制 512 MB
提交次数 0
通过人数 0
金币数量 2 枚
难度 基础


上一题 下一题