F. 争者留其名

    传统题 1000ms 512MiB

争者留其名

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

争者留其名

题目背景

争者留其名。

题目描述

给定一个 nn 个点的树,点的编号为 1n1 \sim n,边的编号为 1n11 \sim n - 1。第 ii 条边连接 uiu_iviv_i,长度为 wiw_i。每个点有个 01 权值 cic_i

现在你可以至多进行一次下面操作:选择两个点 u,vu,v,交换 cu,cvc_u, c_v 的值。

dis(u,v)\operatorname{dis}(u,v) 表示树上两点 uuvv 之间的距离,距离定义为连接它们的唯一简单路径中边的长度之和。

接下来依次进行下面的操作:

  1. 定义一个变量 r=0r=0
  2. 选择两个不同的点 u,vu, v,使得 cu=cv=1c_u=c_v=1,若无法选出则结束。
  3. cu=cv=0c_u=c_v=0,令 rr 加上 dis(u,v)\operatorname{dis}(u,v)
  4. 回到第 2 步。

你希望通过选择合适的操作(包括初始时的交换 cu,cvc_u, c_v 的操作,以及选择 u,vu, vrr 增加 dis(u,v)\operatorname{dis}(u,v) 的操作)以最小化结束时的 rr,求出 rr 可能的最小值。

输入格式

第一行,一个正整数 nn

第二行,nn 个非负整数 c1,,cnc_1, \ldots, c_n,表示每个点的权值。

接下来 n1n-1 行,第 ii 行三个正整数 ui,vi,wiu_i,v_i,w_i,表示第 ii 条边。

输出格式

输出一行,一个整数 rr

输入输出样例 #1

输入 #1

8
1 0 0 0 1 1 1 1
1 2 4
1 3 3
2 4 2
2 5 1
3 6 1
3 7 2
4 8 1

输出 #1

4

说明/提示

【样例解释 #1】

一种可能的操作方式是:

首先一次操作选择 u=8,v=2u=8, v=2,交换 cu,cvc_u,c_v,目前 cc11 的位置有 1,2,5,6,71,2,5,6,7

接下来,r=0r=0

  1. 选择 u=2,v=5u=2,v=5dis(2,5)=1\operatorname{dis}(2,5)=1rr 变为 11
  2. 选择 u=6,v=7u=6,v=7dis(6,7)=3\operatorname{dis}(6,7)=3rr 变为 44
  3. 无法继续选出两个位置 u,vu,v 满足 uvu\ne vcu=cv=1c_u=c_v=1,操作结束。

最终答案 r=4r=4,可以证明没有更小的答案。

【数据范围】 本题共 2020 个测试点,每个 55 分。

对于所有数据,保证:

  • 2n1052 \leq n \leq 10^5
  • 1wi1091 \leq w_i \leq 10^9
  • ci{0,1}c_i \in \{0, 1\}
  • 1ui,vin1 \leq u_i, v_i \leq n
  • 保证输入的边构成一棵树。

::cute-table{tuack}

测试点编号 nn \leq 特殊性质
121 \sim 2 55
353 \sim 5 100100 ^
6106 \sim 10 300300
111211 \sim 12 10410^4 ^
131513 \sim 15 10510^5
  • 特殊性质:保证 i=1nci\sum_{i=1}^n c_i 为偶数。

育华周赛 第二十二期

未参加
状态
已结束
规则
乐多
题目
6
开始于
2026-4-4 8:00
结束于
2026-4-6 20:00
持续时间
60 小时
主持人
参赛人数
11