AT_agc007_e.[AGC007E] Shik and Travel
NOI/NOI+/CTSC
通过率:0%
AC君温馨提醒
该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
在某个国家有 N 个城市,这些城市通过 N−1 条道路相连。道路是双向通行的。为了方便,城市编号为 1 到 N,道路编号为 1 到 N−1。用图论的术语来说,对于任意两个城市,恰好存在一条连接它们的简单路径。也就是说,由城市和道路构成的图是一棵树。此外,如果将 1 号城市作为这棵树的根,这棵树是一棵完全二叉树(完全二叉树指的是,除叶子节点外的每个节点恰好有两个子节点的有根树)。第 i 条道路连接 i+1 号城市和 ai 号城市,每次通过该道路需要支付 vi 的通行费(如果 vi=0,则不需要支付通行费)。
在 1 号城市,有一家以鼓励员工旅游而闻名的公司。该公司有一项道路通行费补助制度,在员工旅行期间产生的大部分道路通行费由公司承担。要使旅行符合该制度的适用条件,需要满足一些限制条件,在这些条件范围内可以自由安排行程。具体如下:
- 要适用该制度,旅行的出发点和终点都必须是 1 号城市。此外,将该国的城市和道路视为以 1 号城市为根的有根树时,若该树有 m 个叶子节点,则旅行日程必须为 m 晚 m+1 天。必须在所有叶子节点对应的城市各住宿一次。
- 在整个旅行过程中,必须恰好每条道路都经过两次。
- 在旅行期间产生的道路通行费中,员工本人需要承担的金额为除去旅行第一天和最后一天外,某一天产生的通行费总额的最大值。剩余部分由公司承担。
Shick 是该公司的员工。在享受道路通行费补助制度的这次旅行中,他只关心如何使自己需要支付的通行费金额最小。请帮他安排这样的旅行路线。
输入格式
输入通过标准输入按以下格式给出。
N a1 v1 a2 v2 ⋯ aN−1 vN−1
输出格式
输出在道路通行费补助制度下进行旅行时,员工本人需要承担的通行费的最小值。
输入输出样例
输入#1
7 1 1 1 1 2 1 2 1 3 1 3 1
输出#1
4
输入#2
9 1 2 1 2 3 2 3 2 5 2 5 2 7 2 7 2
输出#2
6
输入#3
15 1 2 1 5 3 3 4 3 4 3 6 5 5 4 5 3 6 3 3 2 11 5 11 3 13 2 13 1
输出#3
15
输入#4
3 1 0 1 0
输出#4
0
说明/提示
限制条件
- 2<N<131072
- 对于所有 i,1≤ai≤i
- 0≤vi≤131072
- vi 为整数
- 给定的树为完全二叉树
样例解释 1
将城市和道路视为以 1 号城市为根的有根树时,该树有 4 个叶子节点(对应 4,5,6,7 号城市),因此旅行日程为 4 晚 5 天。对于这 4 个城市的住宿顺序有 4!=24 种,但其中部分顺序不符合制度要求。例如,按 (4,5,6,7) 或 (6,7,5,4) 的顺序访问城市时符合制度要求,但按 (5,6,7,4) 的顺序访问时,会在行程中第 1 号城市和第 2 号城市之间的道路上经过 4 次,不符合制度要求。下图展示了这些访问顺序对应的旅行路径。
在所有符合制度要求的城市访问顺序中,对应的行程在第 3 天会经过 4 条道路,通行费总额为 4,这一天的通行费总额为最大值。
样例解释 2
下图展示了一种使员工负担金额最小的旅行路径。
需要注意的是,计算员工负担金额时,不考虑旅行第一天和最后一天产生的通行费。
由 ChatGPT 4.1 翻译
输入解题思路,AI测评打分。不知道怎么写?