#68. Cây Mai Thần Ngày Tết (Mã bài: APRICOT)

Bộ nhớ: 512 MiB Thời gian: 1000 ms Nhập/xuất từ luồng chuẩn
Kiểu bài: Thông thường Kiểu chấm: So sánh văn bản
Đưa lên bởi: Trùm CUỐI

Đề bài

Để chuẩn bị cho Tết Nguyên Đán, nghệ nhân An đang chăm sóc một cây Mai Thần vô cùng đặc biệt. Cây mai có n nụ hoa, mỗi nụ được xem là một đỉnh của một cấu trúc cây nhị phân. Mỗi nụ hoa i mang trong mình một chỉ số "linh khí" là a_i .

Mỗi sáng, những giọt sương long lanh, mỗi giọt mang một linh khí v nhất định, đáp xuống gốc mai. Giọt sương sẽ chảy dọc theo các nhánh cây theo một quy luật diệu kỳ:

  • Khi giọt sương có linh khí v ở nụ hoa u (có linh khí a_u ), nếu v bằng đúng a_u , giọt sương sẽ được nụ hoa hấp thụ và nụ hoa đó sẽ có cơ hội nở rộ.
  • Nếu v nhỏ hơn a_u , giọt sương sẽ lăn sang nhánh bên trái.
  • Nếu v lớn hơn a_u , giọt sương sẽ lăn sang nhánh bên phải.
  • Nếu nhánh cây tương ứng không tồn tại, giọt sương sẽ tan vào không khí.

Một nụ hoa x chỉ có thể nở rộ nếu nó hấp thụ được giọt sương có linh khí bằng đúng với chỉ số linh khí a_x của chính nó (khi giọt sương đáp xuống gốc cây).

An có một vài phép thuật để chăm sóc cây mai và muốn nhờ bạn giúp dự đoán kết quả. An sẽ thực hiện m hành động:

  1. 1 x y: An dùng một lá bùa để thay đổi linh khí của nụ hoa x thành y .
  2. 2 x: An thực hiện phép "xoay chuyển càn khôn" trên nhánh cây bắt đầu từ nụ x . Phép thuật này khiến mọi nụ hoa trong nhánh đó (bao gồm cả nụ x ) hoán đổi vị trí của nhánh con trái và nhánh con phải.
  3. 3 x: An muốn dự đoán xem nụ hoa x có thể nở rộ hay không.

Dữ liệu:

  • Dòng đầu tiên chứa hai số nguyên là số nụ hoa và số hành động của An.
  • n dòng tiếp theo, dòng thứ i mô tả nụ hoa i : chỉ số linh khí a_i và số hiệu của nụ hoa ở nhánh trái và nhánh phải. Số 0 biểu thị không có nụ hoa ở nhánh đó.
  • m dòng tiếp theo mô tả các hành động của An.

Kết quả: Với mỗi hành động loại 3, hãy in ra YES nếu nụ hoa có thể nở rộ, và NO nếu không.

Ví dụ:

Dữ liệu:

3 7
10 2 3
5 0 0
5 0 0
3 1
3 2
3 3
1 3 100
3 3
2 1
3 3

Kết quả:

YES
YES
NO
YES
NO

Giới hạn: 1 \leq n, m \leq 10^5, 0 \leq a_i, y \leq 10^9 .

  • Subtask 1: 20\% số điểm có n, m \leq 5000 ;
  • Subtask 2: 30\% số điểm khác Không có thao tác loại 2 ;
  • Subtask 3: 50\% số điểm còn lại không có giới hạn đặc biệt.