#GESP1025. [GESP202406 七级T1] 黑白翻转

[GESP202406 七级T1] 黑白翻转

题目背景

2024 年 6 月 GESP C++ 七级编程第 1 题

题目描述

小杨有一棵包含 nn 个节点的树,每个节点为白色或黑色。小杨认为一棵树是美丽树,当且仅当删除所有白色节点后,剩余黑色节点仍然连通(组成一棵树)。

每次操作可以选择一个白色节点并将其变为黑色。求最少需要多少次操作,才能使这棵树成为美丽树。

输入格式

第一行输入正整数 nn。 第二行输入 nn 个整数 a1,a2,ldots,ana_1,a_2,ldots,a_nai=0a_i=0 表示节点 ii 为白色,ai=1a_i=1 表示节点 ii 为黑色。 接下来 n1n-1 行,每行输入两个正整数 xi,yix_i,y_i,表示树上的一条边。

输出格式

输出一行一个整数,表示最少操作次数。

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

数据范围与提示

  • 1n1051 \le n\le 10^50ai10 \le a_i \le 1
  • 子任务包括链形树、n100n \le 100 等情况。
  • 样例中将节点 1133 变为黑色后,黑色节点连通。

来源

GESP 2024 年 06 月 C++ 七级 T1