#2099. 徐老师的黑白树

徐老师的黑白树

题目描述

徐老师很喜欢关于树的问题,而为了考考大家,他反手就画出了一棵有 nn 个节点根为 11 的树。

然后他随意的把这 nn 个节点随机染成黑色或者白色

现在徐老师将会进行 mm 次转色操作,每次选中一个点 xx,将以 xx 为根的整棵子树上节点的颜色进行翻转,即黑色变白色,白色变黑色

现在徐老师希望知道,在 mm 次转色操作以后,每个节点的颜色分别是什么

输入格式

输入第一行包含两个整数 n,mn,m,表示共有 nn 个节点和 mm 次转色操作。

输入第二行包含 nn 个正整数,依次表示每个节点的颜色。00 表示白色,11 表示黑色。

接下来n1n-1行,每行两个整数 u,vu, v,表示节点 uu 和节点 vv 之间有边相连。保证数据能够构成一棵树。

接下来 mm 个正整数 aia_i,依次表示每次指定以 aia_i 为根的子树进行转色

输出格式

输出 nn 个整数,中间用空格隔开,依次表示 1n1 \sim n 每个节点的颜色,其中 00 表示白色, 11 表示黑色

数据范围

测试点编号 1n,m1 \leq n,m \leq 特殊性质
131\sim 3 100100
44 10510^5 给定的树是一条链
55 所有节点的父亲都是 11
6106 \sim 10

对于所有数据保证:1ain1 \leq a_i \leq n

样例输入1

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

样例输出1

1 1 0 1 0

样例解释1

这棵树的形状如下

     1
    / \
   2   3
  / \
 4   5

用颜色来表示就是

     0
    / \
   1   0
  / \
 1   0

第一次对 22 号点进行转色,会把 2,4,52,4,5 都进行颜色反转

     0 
    / \
   0   0
  / \
 0   1

第二次对 11 号点进行转色,会把 1,2,3,4,51,2,3,4,5 都进行颜色反转

     1
     / \
   1   1
  / \
 1   0

第三次对 33 号点进行转色,会把 33 进行颜色反转

     1
    / \
   1   0
  / \
 1   0