D. 最优装备

    传统题 1000ms 256MiB

最优装备

该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

最优装备

题目描述

Z 城市的地下管道系统包含 nn 个关键节点和 n1n-1 条双向管道。系统保证任意两个节点之间有且仅有一条简单路径(即树形结构)。

工程师当前位于节点 11,需要前往节点 nn 执行任务。必须沿着唯一的路径前进。

每条管道都有一个固定的腐蚀值 wiw_i。为了安全通过,必须在出发前购买一套防护装备。装备有一个等级 kkkk 为整数,且 k1k \ge 1)。

  • 购买等级为 kk 的装备,你需要支付 kk 枚金币作为基础成本。
  • 装备可以减轻腐蚀带来的伤害。当你携带等级为 kk 的装备通过一条腐蚀值为 ww 的管道时,受到的伤害值为 wk\lfloor \frac{w}{k} \rfloor(即 ww 除以 kk 下取整)。

任务的总花费定义为“装备等级 kk ”与“路径上造成的最大单次伤害”之和

请计算从节点 11 到达节点 nn 所需的最小总花费。

输入格式

第一行包含一个整数 nn (2n1052 \le n \le 10^5),表示节点数量。

接下来 n1n-1 行,每行包含三个整数 u,v,wu, v, w (1u,vn,1w10181 \le u, v \le n, 1 \le w \le 10^{18}),表示节点 uuvv 之间有一条腐蚀值为 ww 的管道。

输出格式

输出一个整数,表示最小的总花费。

输入输出样例 #1

输入 #1

5
1 2 10
2 3 50
3 4 5
4 5 100

输出 #1

20

说明/提示

路径为 123451 \to 2 \to 3 \to 4 \to 5。路径上的腐蚀值集合为 {10,50,5,100}\{10, 50, 5, 100\}。最大值为 100100

我们需要最小化 k+100/kk + \lfloor 100/k \rfloor

  • k=1k=1: 1+100=1011 + 100 = 101

  • k=10k=10: 10+10=2010 + 10 = 20

  • k=20k=20: 20+5=2520 + 5 = 25

    最小花费为 20。

子任务 分值 数据范围
151 \sim 5 1010 2n20,1w10002 \le n \le 20, 1 \le w \le 1000
6126 \sim 12 2020 2n1000,1w10002 \le n \le 1000, 1 \le w \le 1000
131813 \sim 18 3030 2n20000,1w10002 \le n \le 20000, 1 \le w \le 1000
192519 \sim 25 4040 2n105,1w10182 \le n \le 10^5, 1 \le w \le 10^{18}

【睿爸信奥】入门组算法周赛(20260201)

未参加
状态
已结束
规则
IOI
题目
4
开始于
2026-2-1 0:00
结束于
2026-2-7 6:00
持续时间
3.5 小时
主持人
参赛人数
11