题号:NC229305
时间限制:C/C++/Rust/Pascal 5秒,其他语言10秒
空间限制:C/C++/Rust/Pascal 512 M,其他语言1024 M
64bit IO Format: %lld
题目描述
拉普拉斯是善良的恶魔,但是仍然有人向她许下愿望,这当中有好人也有坏人。人们的认识关系为一个树形结构,因为人们的记忆力问题,他们会互相遗忘或者认识。而拉普拉斯每次会选择一些人,保证这些人在关系树上形成一个连通块,实现他们的愿望,人在实现了愿望以后就会改变本性。人的善恶是会改变的,并且总是带着相关的人改变,所以关系树上的一条链上的人的善恶也会改变。
你有一棵树

,给定每个点的颜色黑或者白。
每次你可以选择一个连通块翻转块内所有颜色,问最小翻转次数,使得所有点为白点,每次询问相互独立。
1. 支持链翻转颜色。
2. 结构动态。
输入描述:
第一行两个数
%2Cm(1%5Cleq%20m%5Cleq%2010%5E5))
表示树点数和操作次数。
接下来
行每行两个数表示一条树边。
接下来一行

个数,其中每个数都是 0 或 1。
若第

个数为 0,则第

个点为白色。
若第

个数为 1,则第

个点为黑色。
最后
行每行 5 个数
表示在
为根的意义下将
的父亲换为
,之后翻转链
的颜色。
输出描述:
对于每一次操作后,你需要输出答案。
示例1
输入
复制
3 3
2 1
3 2
1 1 0
2 1 1 1 2
3 1 1 2 3
3 2 1 3 3