第21366题 程序题
黑白翻转:求将树变为美丽树的最少操作次数

题目描述

小杨有一棵包含n个节点的树,这棵树上的任意一个节点要么是白色,要么是黑色。小杨认为一棵树是美丽树当且仅当在删除所有白色节点之后,剩余节点仍然组成一棵树。

小杨每次操作可以选择一个白色节点将它的颜色变为黑色,他想知道自己最少要执行多少次操作可以使得这棵树变为美丽树。

输入格式

  1. 第一行包含一个正整数n,代表树的节点数。
  2. 第二行包含n个非负整数$a_1,a_2,\dots,a_n$,其中如果$a_i=0$,则节点i的颜色为白色,否则为黑色。
  3. 之后n-1行,每行包含两个正整数$x_i,y_i$,代表存在一条连接节点$x_i$和$y_i$的边。

输出格式

输出一个整数,代表最少执行的操作次数。

样例1

输入

5
0 1 0 1 0
1 2
1 3
3 4
3 5

输出

2

样例解释

将节点1和3变为黑色即可使这棵树变为美丽树,此时删除白色节点5,剩余黑色节点仍然组成一棵树。

数据范围

对于全部数据,保证有$1\leq n\leq 10^5,0\leq a_i\leq 1$。

子任务如下: | 子任务编号 | 数据点占比 | n | $a_i$ | 特殊条件 | | --- | --- | --- | --- | --- | | 1 | 30% | $\leq 10^5$ | $0\leq a_i\leq 1$ | 树的形态为一条链 | | 2 | 30% | $\leq 10^5$ | $0\leq a_i\leq 1$ | 只有两个节点颜色为黑色 | | 3 | 40% | $\leq 10^5$ | $0\leq a_i\leq 1$ | 无 |

限制

  • 时间限制:1.0 s
  • 内存限制:512.0 MB
编辑模式
程序运行统计
暂无判题统计