Задано дерево, состоящее из $$$n$$$ вершин. На нем есть $$$k$$$ фишек, расположенных в вершинах $$$a_1, a_2, \dots, a_k$$$. Все $$$a_i$$$ различны. Вершины $$$a_1, a_2, \dots, a_k$$$ изначально покрашены в черный цвет. Остальные вершины белые.
Вы сыграете в игру, в ходе которой сделаете какое-то количество ходов (возможно, ноль). На $$$i$$$-м ходе (в $$$1$$$-индексации) вы подвинете фишку номер $$$((i - 1) \bmod k + 1)$$$ из ее текущей вершины в соседнюю белую вершину и покрасите эту вершину в черный. То есть, если $$$k=3$$$, то вы двигаете фишку $$$1$$$ на ходе $$$1$$$, фишку $$$2$$$ на ходе $$$2$$$, фишку $$$3$$$ на ходе $$$3$$$, фишку $$$1$$$ на ходе $$$4$$$, фишку $$$2$$$ на ходе $$$5$$$, и так далее. Если нет соседней белой вершины, то игра заканчивается.
Какое наибольшее количество ходов вы можете совершить?
В первой строке записано одно целое число $$$t$$$ ($$$1 \le t \le 10^4$$$) — количество наборов входных данных.
В первой строке каждого набора входных данных записано одно целое число $$$n$$$ ($$$1 \le n \le 2 \cdot 10^5$$$) — количество вершин дерева.
В каждой из следующих $$$n - 1$$$ строк записаны два целых числа $$$v$$$ и $$$u$$$ ($$$1 \le v, u \le n$$$) — описания ребер. Данные ребра задают дерево.
В следующей строке записано одно целое число $$$k$$$ ($$$1 \le k \le n$$$) — количество фишек.
В следующей строке записаны $$$k$$$ целых чисел $$$a_1, a_2, \dots, a_k$$$ ($$$1 \le a_i \le n$$$) — вершины с фишками. Все $$$a_i$$$ различны.
Сумма $$$n$$$ по всем наборам входных данных не превосходит $$$2 \cdot 10^5$$$.
На каждый набор входных данных выведите одно целое число — наибольшее количество ходов, которые вы можете совершить.
551 22 33 44 51351 22 33 44 521 251 22 33 44 522 161 21 32 42 53 631 4 6111
2 0 1 2 0
Название |
---|