#P14655. 同归月

同归月

题目描述

小 L 给了你一棵树,树上有 n1n-1 条边,第 ii 条边是 (ui,vi)(u_i,v_i),有的边已经确定了方向,小 L 希望你帮忙给剩下每条边确定方向,满足如下条件:

  • 对于每个节点 ii,设 kik_iii 节点的入边个数,那么 Wi,ki=1W_{i,k_i}=1,其中 Wi,jW_{i,j} 是一个输入的 {0,1}\in\{0,1\} 的数组。
  • 0101 序列 sis_i 表示,若第 ii 条边从 uiu_i 指向 viv_i ,那么 si=0s_i=0,否则 si=1s_i=1,在此基础上请你输出字典序最小的一组 sis_i

如果不存在,请输出 1-1,否则输出一行表示字典序最小的 sis_i

输入格式

第一行一个整数 TT 代表数据组数。

对于每组数据,第一行一个整数 nn

接下来 n1n-1 行,每行两个整数 ui,viu_i,v_i

接下来 nn 行,每行一个长度为 di+1d_i+10101 串,代表 Wi,0Wi,diW_{i,0}\to W_{i,d_i},其中 did_iii 的度数。

接下来一行长度为 n1n-1 的包含 01?01? 的字符串,其中 0,10,1 代表这条边已经定向,?? 代表没有定向。

输出格式

如果无解,输出 -1

否则输出一行长度为 n1n-10101 字符串代表 ss

3
4
2 1
4 2
1 3
010
100
11
10
???
5
5 3
1 5
4 3
2 1
010
10
010
10
001
?0?0
3
3 1
3 2
01
10
010
??
-1
1000
01

提示

对于 20%20\% 的数据,T20,n16T\leq 20,n\leq 16

对于 40%40\% 的数据,n100\sum n\leq 100

对于 60%60\% 的数据,n2000\sum n\leq 2000

对于另外 2020 的数据,输入的字符串只有 ??

对于 100%100\% 的数据,2n5×105n22\leq \sum n\leq 5\times 10^5,n\geq 2