P3690 【模板】动态树(LCT)

题目描述

给定 $n$ 个点以及每个点的权值,要你处理接下来的 $m$ 个操作。 操作有四种,操作从 $0$ 到 $3$ 编号。点从 $1$ 到 $n$ 编号。 - `0 x y` 代表询问从 $x$ 到 $y$ 的路径上的点的权值的 $\text{xor}$ 和。保证 $x$ 到 $y$ 是联通的。 - `1 x y` 代表连接 $x$ 到 $y$,若 $x$ 到 $y$ 已经联通则无需连接。 - `2 x y` 代表删除边 $(x,y)$,不保证边 $(x,y)$ 存在。 - `3 x y` 代表将点 $x$ 上的权值变成 $y$。

输入格式

输出格式

说明/提示

#### 数据规模与约定 对于全部的测试点,保证: - $1 \leq n \leq 10^5$,$1 \leq m \leq 3 \times 10^5$,$1 \leq a_i \leq 10^9$。 - 对于操作 $0, 1, 2$,保证 $1 \leq x, y \leq n$。 - 对于操作 $3$,保证 $1 \leq x \leq n$,$1 \leq y \leq 10^9$。