#HK5029. 「POI 2022/2023 R3」Park linowy

「POI 2022/2023 R3」Park linowy

题目描述

题目译自 XXX Olimpiada Informatyczna – III etap Park linowy

Bajtazar 买下了 Stubitowy 森林的一片土地,计划打造一个绳索公园。他选定了 nn 棵高耸的树,每棵树上将搭建一个木制平台。每个平台固定在树上,高度为从地面起的正整数(单位:米)。如何为每个平台选择合适的高度,让 Bajtazar 夜不能寐。唯一让他稍感安慰的是,这些树足够高,平台可安置在 11nn 米之间的任意整数高度。

Bajtazar 已规划了 n1n-1 条绳索连接,链接各个平台。每条绳索允许双向通行,连接的两个平台间可通过一系列绳索往返。任意两个平台间均存在路径。

若两平台间有绳索连接,它们的的高度必须不同,否则通行会显得乏味。此外,对于部分绳索,Bajtazar 已指定了滑行和攀爬方向,即哪个平台必须高于另一个。

绳索公园所需的认证和检查数量与平台的最大高度成正比。因此,Bajtazar 希望找出最小的自然数 MM,使得所有平台的高度不超过 MM 米时,他的计划仍可实现。

输入格式

第一行包含一个整数 t (1t25000)t\ (1 \leq t \leq 25000),表示数据组数。每组数据的格式如下:

每组输入数据的第一行包含一个整数 nn (2n200000)(2 \leq n \leq 200000),表示树(及平台)的数量,树编号为 11nn
接下来的 n1n-1 行描述绳索连接,第 ii 行包含三个整数 ai,bi,dia_i, b_i, d_i (1aibin,0di1)(1 \leq a_i \neq b_i \leq n, 0 \leq d_i \leq 1),表示树 aia_ibib_i 的平台间有绳索连接。两平台高度必须不同。若 di=1d_i=1,则 aia_i 的平台必须低于 bib_i 的平台。

所有输入数据的 nn 值之和不超过 200000200000

输出格式

对于每组输入数据,输出一行,包含一个整数 MM,表示可实现计划的最小最大高度。

1
4
1 2 1
1 3 0
4 1 1

3

对于 M=3M=3,一个可行的平台高度安排为:树 11 的平台高度为 22,树 2233,树 331133,树 4411
M2M \leq 2 时,不存在可行的平台高度安排。

附加样例

  1. 单组输入数据,n=1023=2101n=1023=2^{10}-1,对于每个 k=1,2,,291k=1,2,\ldots,2^9-1,平台 kk 必须低于平台 2k2 \cdot k,且与平台 2k+12 \cdot k + 1 高度不同,结果 M=10M=10
  2. 单组输入数据,n=50000n=50000,每棵树最多有两条绳索连接。
  3. 三组输入数据,nn[60000,70000][60000, 70000] 中随机抽取,每条绳索满足 di=1d_i=1,连接平台 11 与其他平台。

数据范围与提示

详细子任务附加限制及分值如下表所示。

子任务编号 附加限制 分值
11 所有输入数据 nn 之和 1500\leq 1500 2525
22 每棵树最多有两条绳索连接 2020
33 di=1d_i=1 对于所有 1i<n1 \leq i < n 2020
44 无附加限制 3535