E. Пары вершин
ограничение по времени на тест
3 секунды
ограничение по памяти на тест
512 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

Дано дерево, состоящее из $$$2n$$$ вершин. Напомним, что деревом называется связный неориентированный граф, в котором нет циклов. На каждой вершине написано одно целое число от $$$1$$$ до $$$n$$$. Каждое число от $$$1$$$ до $$$n$$$ написано ровно на двух различных вершинах. У каждой вершины также есть стоимость — вершина $$$i$$$ стоит $$$2^i$$$.

Требуется выбрать в дереве такое подмножество вершин, что:

  • подмножество связно; то есть, из каждой вершины подмножества можно добраться до любой другой вершины подмножества, проходя только через вершины подмножества;
  • каждое число от $$$1$$$ до $$$n$$$ написано хотя бы на одной вершине подмножества.

Среди всех таких подмножеств требуется найти такое, что суммарная стоимость вершин в нем минимальна. Обратите внимание, что не требуется минимизировать количество вершин в подмножестве.

Входные данные

В первой строке записано одно целое число $$$n$$$ ($$$1 \le n \le 2 \cdot 10^5$$$).

Во второй строке записаны $$$2n$$$ целых чисел $$$a_1, a_2, \dots, a_{2n}$$$ ($$$1 \le a_i \le n$$$). Каждое число от $$$1$$$ до $$$n$$$ встречается ровно два раза.

В каждой из следующих $$$2n-1$$$ строк записаны два целых числа $$$v$$$ и $$$u$$$ ($$$1 \le v, u \le 2n$$$) — ребра дерева. Данные ребра образуют валидное дерево.

Выходные данные

В первой строке выведите одно целое число $$$k$$$ — количество вершин в подмножестве.

Во второй строке выведите $$$k$$$ различных целых чисел от $$$1$$$ до $$$2n$$$ — номера вершин в выбранном подмножестве. Вершины можно выводить в произвольном порядке.

Примеры
Входные данные
3
1 1 3 2 3 2
4 2
1 6
6 2
6 3
2 5
Выходные данные
3
2 4 5 
Входные данные
3
2 3 1 3 2 1
6 4
2 4
5 2
3 6
3 1
Выходные данные
4
1 3 4 6 
Входные данные
6
5 2 3 4 6 4 2 5 6 1 1 3
10 8
2 10
12 7
4 10
5 9
6 2
1 9
3 4
12 6
11 5
4 5
Выходные данные
6
2 3 4 5 8 10 
Примечание

На данных изображениях нарисованы ответы на первые два примера. В скобках около номеров вершин подписаны числа, написанные на них.

В первом примере есть такие валидные подмножества: $$$[2, 4, 5]$$$ (стоимость равна $$$2^2 + 2^4 + 2^5 = 52$$$), $$$[2, 4, 5, 6]$$$ (стоимость равна $$$116$$$), $$$[1, 6, 3]$$$ (стоимость равна $$$74$$$), $$$[2, 6, 3]$$$ (стоимость равна $$$76$$$) и многие другие.

Во втором примере стоимость подмножества $$$[4, 6, 3, 1]$$$ равна $$$90$$$.