#661. 路口拾宝

路口拾宝

样例下载

题目描述

NN 个路口,编号为 11 ~ NN。这些路口由 N1N-1 条双向道路连接,每条道路连接两个不同的路口,任意两个路口都可以经过若干条道路互达。

在接下来的若干天,你每天的任务是巡逻。每天的巡逻从 11 号路口出发,然后自己指定一个路口作为当天的目的地,沿最短路径到达目的地后,再沿原路返回。

你希望用最少的天数,使得每个路口至少被你巡逻过一次。

你的好朋友他并不知道你的巡逻安排,他只想给你一些惊喜。他不知道你要巡逻多少天,但他知道你最多巡逻 NN 天,所以在接下来的 NN 天,每天他会在某一个路口放置一个宝贝。如果你当天巡逻经过这个路口,就可以捡到这个宝贝。否则,他就会在你当天巡逻结束后把宝贝拿走。

你不经意间知道了你朋友的计划,你知道他在第 ii 天会在 XiX_i 号路口放置宝贝。你当然希望能捡到更多的宝贝,但你不会为了捡到更多的宝贝而增加自己的巡逻天数。

问:在使用最少天数完成你的巡逻任务的前提下,你最多能捡到多少个宝贝?

输入格式

第一行:一个整数 NN

第二行:NN 个整数 XiX_i

接下来 N1N−1 行:每行两个整数 U,VU, V,表示路口 UUVV 之间有一条道路。

输出格式

一个整数,表示答案。

样例输入

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

样例输出

3

样例解释

最少需要 4 天完成巡逻任务,最多捡到 3 个宝贝。巡逻方案可能很多,以下列出两种可能的方案:

(1)第一种可能方案:

  • 第 1 天:1-2-3-2-1 经过 3 号路口捡到宝贝
  • 第 2 天:1-2-4-2-1 经过 4 号路口捡到宝贝
  • 第 3 天:1-5-1 没有捡到宝贝
  • 第 4 天:1-6-1 经过 6 号路口捡到宝贝

(2)第二种可能方案:

  • 第 1 天:1-2-3-2-1 经过 3 号路口捡到宝贝
  • 第 2 天:1-5-1 没有捡到宝贝
  • 第 3 天:1-2-4-2-1 经过 2 号路口捡到宝贝
  • 第 4 天:1-6-1 经过 6 号路口捡到宝贝

数据范围

30% 的数据:N103N ≤ 10^3

100% 的数据:2N105;1Xi,U,VN2 ≤ N ≤ 10^5; 1 ≤ X_i, U, V ≤ N