Callisto有一棵包含$m$个节点的有根树(根节点为$1$),第$i$个节点有一个点权$c_{i}$。
一开始,Callisto会将这棵树复制$n-1$次,形成$n$棵一模一样的树,按$1$到$n$编号。
然后,Callisto会选择一棵树,使之变为Magical Tree。
接下来Callisto会做很多次操作:
1. 如果这棵树不是Magical Tree,那么Callisto会在这棵树上选择两个节点$x,y(dep_x \lt dep_y)$:
将$c_{x}$减一,$x$的父节点$fa$的$c_{fa}$加一。
将$c_{y}$减一,$y$的其中一个儿子$son$的$c_{son}$加一。
2. 如果这棵树是Magical Tree,那么Callisto会在这棵树上选择两个节点$x,y(dep_x \lt dep_y)$:
将$c_{x}$减一,$x$的父节点的父节点$ffa$的$c_{ffa}$加一。
将$c_{y}$减一,$y$的其中一个儿子$son$的$c_{son}$加一。
保证以上节点都存在,而且任意时刻点权不会小于0。
保证每棵树至少执行一次操作。
操作完成后,Callisto忘记了原来的树的点权和选择的Magic Tree。
Callisto告诉你修改过的$n$棵树,问你哪一棵是Magic Tree,并且Magical Tree上做了几次操作。
Tip: $dep_x$表示$x$的深度,也就是到根节点的距离$+1$,根节点深度为$1$。
第一行包含两个整数$n,m(15\le n*m \le 3*10^5,3\le n,5\le m)$
接下来$m-1$行,每行两个整数$x,y$表示一条树边。
接下来$n$行,每行$m$个数,第$i$行第$j$个整数$c_{i,j}(0\le c_{i,j}\le 10^5)$表示编号为$i$的树的$j$号节点的点权。
一共一行,两个数,表示Magic Tree的编号和操作的次数。
3 9 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 0 1 2 0 0 2 1 1 0 0 1 1 1 2 0 0 2 0 0 1 2 1 0 0 2 1 0
3 1
原树权值序列为${0,1,1,1,1,1,1,1,0}$。
第一棵树,$x=4,y=5$ 执行一次操作。
第二棵树,$x=6,y=7$ 执行一次操作。
第三棵Magical Tree,$x=5,y=6$ 执行一次操作。