logo AlgoBeat OnlineJudge
登录 注册

#10149. [ABSEC0004] 那些年少的愁,你替我扛起

内存限制:512 MiB 时间限制:1000 ms 标准输入输出
题目类型:传统 评测方式:文本比较
上传者: Murasame

题目描述

青春是一场盛大的遇见,却也常常伴随着无言的忧愁。

在小镇上,有 个少年,他们之间有着 条纯粹的友谊纽带,使得所有人都能通过友谊直接或间接地联系在一起。每个少年 都有着属于自己的忧愁值

面对世界的重压,少年们可以选择独自承受,也可以选择与一位朋友结下深深的羁绊(配对)。

当两个互为朋友的少年结下羁绊时,他们决定共同面对风雨。为了保护对方,忧愁值较大的一方会温柔地说:“那些年少的愁,你替我扛起。” 于是,较轻的那份忧愁会在彼此的慰藉中消散,两人共同承受的忧愁值仅仅是两人中较大的那个忧愁值(即 )。

然而,心力是有限的,每个少年最多只能和一位朋友结下羁绊。如果没有与任何人结下羁绊,少年只能独自承受自己的忧愁值

给定一棵包含 个节点(代表少年)和 条边(代表友谊)的树。

每个节点 有一个权值

你可以选择树上的一些边进行匹配(即任意两条选中的边不能共享同一个顶点)。

对于没有被任何匹配边覆盖的节点 ,其对总代价的贡献为

对于被匹配边 覆盖的两个节点,它们对总代价的联合贡献为

请你规划出一种羁绊的结成方式,使得所有少年承受的总忧愁值最小

输入格式

第一行包含一个整数 ,表示少年的数量。

第二行包含 个整数 ,分别表示每个少年的初始忧愁值。

接下来 行,每行包含两个整数 ,表示少年 之间有一条友谊纽带。

输出格式

输出一个整数,表示所有少年承受的最小总忧愁值。

样例

【样例输入】

5
3 8 5 2 6
1 2
2 3
3 4
3 5

【样例输出】

16

【样例说明】

节点忧愁值分别为:

选择让 (1, 2) 结成羁绊,共同忧愁值为

选择让 (3, 5) 结成羁绊,共同忧愁值为

节点 4 独自一人,承受忧愁值

总忧愁值为

可以证明这是最小的总忧愁值。

数据范围与提示

  • 对于所有数据,保证
  • 对于所有数据,保证
  • 保证输入的图是一棵合法的树。