Дано неориентированное дерево с корнем в вершине $$$1$$$, где каждая вершина имеет вес $$$w_i\in\{1,-1\}$$$.
Вулкан в корне извергается в момент времени $$$0$$$. В момент времени $$$t$$$ лава затопляет все вершины, расстояние до которых от корня составляет не более $$$t$$$, где расстояние — это количество рёбер на кратчайшем пути между двумя вершинами.
В момент времени $$$0$$$ вы находитесь на вершине $$$st$$$ с $$$S$$$ жизнями, изначально $$$S=1$$$. Начиная с момента времени $$$0$$$ (включая момент времени $$$0$$$), в каждый момент времени по порядку происходят следующие события:
Найдите максимальное количество перемещений, которые вы можете сделать, прежде чем умрете.
Каждый тест состоит из нескольких наборов входных данных. В первой строке находится одно целое число $$$T$$$ ($$$1 \le T \le 10^4$$$) — количество наборов входных данных. Далее следует описание наборов входных данных.
Для каждого набора входных данных первая строка содержит два целых числа $$$n,st$$$ ($$$2 \le st \le n \le 5\cdot 10^5$$$), обозначающих количество вершин и вершину, с которой вы начинаете в момент времени $$$0$$$.
Вторая строка содержит $$$n$$$ целых чисел $$$w_1, w_2, \ldots, w_n$$$ ($$$w_i\in\{1,-1\}$$$,$$$w_{st}=1$$$), где $$$w_i$$$ обозначает вес вершины $$$i$$$.
Следующие $$$n-1$$$ строк содержат по два целых числа $$$u,v$$$ ($$$1\le u,v \le n$$$), которые описывают пару вершин, соединённых рёбером.
Гарантируется, что данный граф является деревом, и что сумма $$$n$$$ по всем наборам входных данных не превосходит $$$10^6$$$.
Для каждого набора входных данных выведите строку с целым числом, указывающим максимальное количество перемещений, которые вы можете сделать.
67 4-1 -1 -1 1 1 1 -12 13 24 35 46 57 68 2-1 1 1 1 1 -1 1 12 16 28 63 87 35 74 58 2-1 1 -1 -1 -1 1 -1 -12 18 24 15 43 47 26 88 41 1 1 1 1 -1 1 -18 13 14 35 46 47 62 58 41 1 1 1 -1 -1 1 12 15 14 58 53 87 26 218 10-1 -1 -1 -1 -1 -1 -1 -1 -1 1 -1 1 1 -1 1 1 1 11 22 33 44 55 66 77 88 99 1010 1111 1212 139 1414 1515 1616 1717 18
6 7 3 3 1 13
Дерево в первом наборе входных данных:
Первый набор входных данных. Одна из оптимальных последовательностей перемещений — $$$4\to3\to4\to5\to6\to7\to6$$$, что составляет в общей сложности $$$6$$$ перемещений. Изменения в $$$S$$$ составляют $$$2\to1\to2\to3\to4\to3\to4$$$. Более подробно: