#P17219. [2025年南开中学集训]删
[2025年南开中学集训]删
删(delete)
题目描述
小 C 在复习 Ad-hoc 题目,他得到了一棵含有 个节点的树和一个初始只包含一个 的序列 ,树的根节点为 且每个节点是黑白两种颜色。
每次他可以选择一个节点,满足该节点在树上没有父亲,删除这个节点及其连接的边,设当前序列 的长度为 ,那么如果这个节点是黑色,则 ;否则 ,然后 。
最后 序列长度一定为 ,定义这个序列为可消除的,当且仅当每次可以选择 个或 个连续的相同的数删除能够使得 序列为空。
小 C 想要知道,对于所有本质不同的操作方案,有多少种满足最后生成的 是可消除的。此处两种操作方案本质不同当且仅当存在一个 满足这两个方案第 次选择的节点不同。
由于答案很大,请输出答案对 取模后的结果。
输入格式
第一行一个整数 表示树的节点数量。
第二行 个整数,第 个整数表示节点 的颜色,如果是黑色则为 ,否则为 。
接下来 行,每行两个整数 ,表示树上有一条 到 的边。
输出格式
一行一个整数,表示答案对 取模后的结果。
样例 1 输入
3
1 0 1
1 2
1 3
样例 1 输出
1
样例 1 解释
对于该组样例,一共有两种可能的删除点的序列,分别是 和 ,他们对应的 序列分别为 和 ,显然,前者可以删空,后者不能删空。
样例 2 输入
5
1 1 0 0 1
1 2
2 3
1 4
2 5
样例 2 输出
1
数据范围
对于所有数据,满足 ,。
| 子任务 | 分值 | 附加限制 |
|---|---|---|
| 1 | 5 | |
| 2 | ||
| 3 | 至多两个点是黑色的 | |
| 4 | 10 | 第 行输入的 等于 ,输入的 等于 |
| 5 | 15 | 第 行输入的 等于 ,输入的 等于 |
| 6 | 25 | |
| 7 | 35 | 无特殊限制 |