#P3441. [POI 2006] MET-Subway

[POI 2006] MET-Subway

题目描述

某城市长期进行地铁建设。由于财务管理不善且成本被严重低估,导致没有预留购买列车的资金。结果只建成了过多的车站和部分规划中的隧道——仅能确保任意两个车站之间存在连接。隧道数量(每条隧道都是双向的)比已建成的车站数量少一。剩余资金仅能购置少量列车。

为了挽回颜面,董事会请你规划地铁线路,使得被连接的站点数量最大化。每列列车在指定线路上行驶。线路不能分叉(即同一车站不能有三条隧道属于同一条线路)。不同线路可以包含相同的车站或隧道。

任务
编写一个程序:

  1. 从标准输入读取隧道系统的描述和待规划的地铁线路数量;
  2. 计算指定数量的地铁线路能覆盖的最大站点数;
  3. 将结果输出到标准输出。

输入格式

标准输入的第一行包含两个整数 nnll2n10000002 \le n \le 1\,000\,0000ln0 \le l \le n),以单个空格分隔。nn 表示车站数量,ll 表示待规划的地铁线路数量。车站编号为 11nn

接下来的 n1n-1 行,每行包含两个不同的整数,以单个空格分隔。第 (i+1)(i+1) 行的数字 1ai,bin1 \le a_i, b_i \le n 表示第 ii 条隧道连接的两个车站编号。

输出格式

标准输出的第一行(也是唯一一行)应包含一个整数,表示列车线路能覆盖的最大站点数。

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

提示

翻译由 DeepSeek V3 完成