#loj5754. 「ROI 2026 Day1」泰莫利亚调查

    ID: 12595 传统题 2000ms 1100MiB 尝试: 2 已通过: 1 难度: 10 上传者: 标签>ROI2026动态规划 DP贪心网络流反悔贪心闵可夫斯基和 Minkowski sum省选/NOI−

「ROI 2026 Day1」泰莫利亚调查

#5754. 「ROI 2026 Day1」泰莫利亚调查

标签: 传统 | 时间限制: 2000 ms | 内存限制: 1024 MiB |

题目描述

译自 ROI 2026 Day1 T2. Расследование в Темерии

泰莫利亚(Temeria)是北方最强大的王国之一,其首都是维济玛(Vyzima)。居住在维济玛的女巫特莉丝(Triss)发现了强烈的魔法异常,并决定探索泰莫利亚王国以寻找其源头。

泰莫利亚共有 nn 座城市,编号为从 11nn,首都维济玛的编号为 11。这些城市由 n1n-1 条双向道路连接,第 ii 条道路连接城市 uiu_iviv_i,其长度为 wiw_i。保证特莉丝仅通过这些道路即可从任意一座城市到达另一座城市。

特莉丝计划从维济玛出发并最终回到维济玛,期间走遍所有的 nn 座城市。 特莉丝可以沿道路行走,但这样速度较慢。她拥有 kk 颗传送水晶,可以利用它们在城市之间进行瞬间移动。

在任何时刻,特莉丝都可以在她当前所在的城市留下一个水晶。随后,这位女巫可以利用之前留下的水晶,沿最短路径瞬间回到该水晶所在的城市。使用后,水晶会损毁。特莉丝可以按任意顺序放置和使用水晶。 遗憾的是,传送会留下痕迹。具体来说,若特莉丝在城市 aa 使用水晶并传送到了城市 bb,那么位于 aabb 最短路径上的所有城市(包括 aabb)都会留下魔法痕迹。此后,其他的传送路线都不能经过这些留有痕迹的城市。

请帮助特莉丝解决这个问题。对于从 11kk 之间的每一个 jj,确定在花费不超过 jj 颗水晶的前提下,走遍所有城市并返回维济玛所需的最小步行距离。

输入格式

第一行包含两个整数 nnkk (2n500000;1kn)(2 \leq n \leq 500\,000; 1 \leq k \leq n),分别表示城市的数量和特莉丝拥有的传送水晶数量。

接下来的 n1n-1 行包含道路的描述:每行有三个整数 ui,viu_i, v_iwiw_i (1ui,vin;1wi109)(1 \leq u_i, v_i \leq n; 1 \leq w_i \leq 10^9),分别表示第 ii 条道路连接的两座城市编号及其长度。

输出格式

输出 kk 个整数,其中第 jj 个整数表示:在花费不超过 jj 颗水晶的前提下,走遍所有城市并返回维济玛所需的最小距离。

样例 1

输入

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

输出

6

在第一个样例中,特莉丝的最优路线如下:

  • 特莉丝在城市 11 留下水晶,然后沿路线 12134351 \to 2 \to 1 \to 3 \to 4 \to 3 \to 5 行进,随后使用水晶,瞬间回到城市 11

样例 2

输入

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

输出

86
85

在第二个样例中,最优路线如下:

  • 特莉丝沿路线 1511 \to 5 \to 1 行进,然后在城市 11 留下水晶,接着沿路线 $1 \to 9 \to 1 \to 2 \to 3 \to 7 \to 3 \to 4 \to 8 \to 4 \to 6 \to 10$ 行进,并在城市 1010 使用水晶回到城市 11。该路线的长度为 8686,且特莉丝恰好使用了一颗水晶。

在另一种路线中,特莉丝需要使用两颗水晶,分别记为 xxyy

  • 特莉丝在城市 11 留下水晶 xx
  • 接着沿路线 $1 \to 5 \to 1 \to 9 \to 1 \to 2 \to 3 \to 7 \to 3 \to 4 \to 6$ 行进;
  • 在城市 66 特莉丝留下水晶 yy
  • 然后前往 6106 \to 10 并在城市 1010 使用水晶 yy 回到城市 66
  • 沿路线 6486 \to 4 \to 8 行进;
  • 最后通过使用水晶 xx 结束她的旅程。

数据范围与提示

详细子任务附加限制及分值如下表所示。其中子任务 00 是样例。

子任务 分值 n,kn, k 附加限制 依赖子任务
11 99 n150000;k=1n \leq 150\,000; k = 1
22 55 n100n \leq 100 00
33 1010 n5000n \leq 5\,000 0,20, 2
44 99 n150000;k300n \leq 150\,000; k \leq 300 0,1,20, 1, 2
55 1111 n150,000n \leq 150,000 完美二叉树wi=1w_i = 1
66 1111 n150000n \leq 150\,000 wi=1w_i = 1 55
77 1515 特殊图
88 1212 每个城市出度不超过 1010
99 1111 0,180, 1 \sim 8
1010 44 n300000n \leq 300\,000 0,190, 1 \sim 9
1111 33 n500000n \leq 500\,000 0,1100, 1 \sim 10
  • 子任务 55 中的完美二叉树是指包含 2s12^s-1 个节点(n=2s1n = 2^s-1)的树,其中对于 112s112^{s-1}-1 之间的每个 ii,都存在两 selection 条边 (i,2i)(i, 2i)(i,2i+1)(i, 2i+1)
  • 子任务 77 中的特殊图是指包含奇数个节点 nn 的树,其中对于 11n12\frac{n-1}{2} 之间的每个 ii,都存在两条边 (1,2i)(1, 2i)(2i,2i+1)(2i, 2i+1)