开始: 2025-07-04 17:00:00

暑假训练赛03专题:逆元,组合数,倍增算法

结束: 2025-07-04 21:00:00
当前  2025-07-17 19:50:52  类型: IOI  状态: 已经结束 

P6. 宝石项链
描述

魔法师小明收集了 n 颗魔法宝石,编号从 1n。每颗宝石都具有光明或黑暗属性。小明希望用这些宝石制作一条最强大的魔法项链。

对于项链中的一段连续宝石序列(不重复使用宝石),如果相邻宝石的属性交替变化(光明→黑暗→光明→... 或 黑暗→光明→黑暗→...),则这段序列被称为"和谐序列"。例如,若宝石1和4为黑暗属性,其余为光明属性,序列2-1-3-4就是和谐序列,而序列2-1-3-5不是(相邻宝石3和5均为光明属性)。

魔法项链的威力取决于其最长和谐序列的长度。小明想知道,他能制作出的魔法项链的最大威力是多少?

n\leq 2 \times 10^5

输入

第一行包含一个正整数 n,表示宝石数量。  

第二行包含 n 个整数 a_1, a_2, a_3, \dots a_n,代表每颗宝石的属性。如果 a_i = 0,宝石 i 为光明属性;如果 a_i = 1,宝石 i 为黑暗属性。  

之后 n - 1 行,每行两个正整数 u_i, v_i,表示宝石 u_iv_i 可以相邻连接。


输出

输出一行一个整数,表示最长和谐序列的长度。

样例

输入

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

输出

4

输入

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

输出

1
提交

题目参数
时间限制 1 秒
内存限制 128 MB
提交