#P14922. [UJGOI 2023]Anton the Guard

    ID: 14138 传统题 3000ms 256MiB 尝试: 1 已通过: 1 难度: 9 上传者: 标签>CF2700树形DP虚树LCA动态规划数据结构

[UJGOI 2023]Anton the Guard

题目描述

Anton 是一名保安,负责看守编号为 11nnnn 个物体。

n1n-1 条道路,第 ii 条道路连接物体 uiu_iviv_i,长度为 wiw_i。保证可以从物体 11 到达任意其他物体。

一开始,Anton 位于物体 11

定义每个物体的优先级为:从该物体到物体 11 需要经过的最少道路条数。

例如,物体 11 的优先级为 00;所有与物体 11 直接相连的物体优先级为 11;依此类推。

Anton 需要访问所有物体。他必须先访问所有优先级为 11 的物体,然后访问所有优先级为 22 的物体,再访问所有优先级为 33 的物体,依此类推。

如果有多个物体具有相同优先级,Anton 可以自行决定访问它们的顺序。注意,只有在访问完所有优先级为 k1k-1 的物体之后,Anton 才能访问任何优先级为 kk 的物体。

请你求出 Anton 至少需要行走的总距离。

输入格式

第一行包含一个整数 nn

第二行包含 n1n-1 个整数 pip_i,表示物体 i+1i+1 与物体 pip_i 之间有一条道路。

第三行包含 n1n-1 个整数 wiw_i,表示物体 i+1i+1 与物体 pip_i 之间道路的长度。

保证可以从物体 11 到达所有其他物体。

输出格式

输出一个整数,表示 Anton 需要行走的最小总距离。

数据范围

对于所有测试数据:

1n1061 \le n \le 10^6

对于所有 i=1,2,,n1i=1,2,\ldots,n-1

1pin1 \le p_i \le n 1wi1091 \le w_i \le 10^9

输入 #1

7
3 1 1 1 5 6
14 10 6 5 7 3

输出 #1

85

子任务

  1. 44 分:1n101 \le n \le 10
  2. 55 分:1n221 \le n \le 22
  3. 1313 分:同一优先级的物体数量不超过 66
  4. 1010 分:同一优先级的物体数量不超过 1010
  5. 1515 分:wi=1w_i=1
  6. 1515 分:1n1051 \le n \le 10^5
  7. 3838 分:无额外限制。