[USACO 2019 Feb G]Cow Land
题号:NC24261
时间限制:C/C++/Rust/Pascal 2秒,其他语言4秒
空间限制:C/C++/Rust/Pascal 32 M,其他语言64 M
64bit IO Format: %lld

题目描述

Cow Land is a special amusement park for cows, where they roam around, eat delicious grass, and visit different cow attractions (the roller cowster is particularly popular).

There are a total of N different attractions (2≤N≤10^5). Certain pairs of attractions are connected by pathways, N−1 in total, in such a way that there is a unique route consisting of various pathways between any two attractions. Each attraction ii has an integer enjoyment value ei, which can change over the course of a day, since some attractions are more appealing in the morning and others later in the afternoon.

A cow that travels from attraction i to attraction j gets to experience all the attractions on the route from i to j. Curiously, the total enjoyment value of this entire route is given by the bitwise XOR of all the enjoyment values along the route, including those of attractions i and j.

Please help the cows determine the enjoyment values of the routes they plan to use during their next trip to Cow Land.

输入描述:

The first line of input contains N and a number of queries Q (1≤Q≤10^5). The next line contains e1…eN (0≤ei≤10^9). The next N−1 lines each describe a pathway in terms of two integer attraction IDs a and b (both in the range 1…N). Finally, the last Q lines each describe either an update to one of the ei values or a query for the enjoyment of a route. A line of the form "1 i v" indicates that ei should be updated to value v, and a line of the form "2i j" is a query for the enjoyment of the route connecting attractions i and j.

In test data worth at most 50% of points, there will be no changes to the values of the attractions.

输出描述:

For each query of the form "2 i j", print on a single line the enjoyment of the route from i to j.
示例1

输入

复制
5 5
1 2 4 8 16
1 2
1 3
3 4
3 5
2 1 5
1 1 16
2 3 5
2 1 5
2 1 3

输出

复制
21
20
4
20