EduBrick

Xor на пути

3000 мс · 256 МБ · всё или ничего

Дано подвешенное за вершину 11 дерево с числами в вершинах. Запросы: 1 i x — присвоить вершине ii значение xx; 2 u v — побитовое исключающее «или» всех значений на пути от uu до vv.

Формат ввода

В первой строке — числа nn и qq (1≤n,q≤1051 \le n, q \le 10^5). Во второй — nn чисел (0≤ai<2300 \le a_i < 2^{30}). В следующих n−1n - 1 строках — рёбра. Далее qq запросов.

Формат вывода

На каждый запрос второго вида выведите значение xor.

Примеры

ввод
5 4
1 2 3 4 5
1 2
2 3
1 4
4 5
2 3 5
1 2 0
2 3 5
2 4 4
вывод
1
3
4
ввод
1 2
7
2 1 1
1 1 0
вывод
7
Разбор идеи от автора задачи. Сначала попробуйте сами.
Войдите, чтобы отправлять решения.