AT_kupc2024_o.Ordinary Blossom Algorithm
通过率:0%
AC君温馨提醒
该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
有一棵以 1 号结点为根的 N 个结点的有根树,结点编号为 1 到 N。第 i 条边连接结点 Ai 和 Bi。
每个结点都有一个权值,第 v 个结点的权值为 Wv。
你的目标是通过进行如下操作任意次数,最终将树收缩为只包含结点 1 的树。
- 选择从根出发的一条路径,将路径上所有的边进行缩约,并把路径结束点作为新的根。新的根的权值为该路径上所有结点的权值之和 S,并将 S 加入到总成本中。
请在所有能以最少操作次数完成目标的方案中,求出可能的最小代价和最大代价,记为 Cmin 和 Cmax。
输入格式
输入通过标准输入给出,格式如下:
N
A1 B1
A2 B2
⋮
AN−1 BN−1
W1 W2 ⋯ WN
输出格式
请输出以空格分隔的两个整数 Cmin 和 Cmax。
Cmin Cmax
输入输出样例
输入#1
4 1 2 1 3 2 4 20 25 1 5
输出#1
72 101
输入#2
10 2 4 3 8 7 9 6 3 2 1 9 5 9 6 3 10 9 2 19359725 62617217 96402215 25620070 46288197 40930485 37441368 32164537 69968419 79525817
输出#2
1525009090 2231445426
说明/提示
样例解释 1
将树收缩为 1 个结点所需的最小操作次数是 2。
如果第一次选择的路径是 1−2−4,则新的树只剩下新根(设为结点 5)和结点 3,新根权值为 S=50。然后再选路径 5−3,此时树最终变为只有权值为 S=51 的一个结点,总花费为 50+51=101,这是用 2 次操作完成时的最大代价。
相反,如果第一次选择 1−3(新根设为结点 5),然后选择 5−2−4,总花费为 21+51=72,是 2 次操作时的最小代价。
数据范围
- 所有输入为整数
- 2≤N≤2×105
- 1≤Ai,Bi≤N
- 1≤Wv≤108
- 输入保证构成一棵树
由 ChatGPT 5 翻译
输入解题思路,AI测评打分。不知道怎么写?