[CSES] Path Queries

Xem PDF

Nộp bài


Điểm: 15 (thành phần)
Thời gian: 1.0s
Bộ nhớ: 512M

Tác giả:
Dạng bài

Cho một cây gồm n đỉnh (cây là đồ thị vô hướng, liên thông và không có chu trình). Các đỉnh này được đánh số từ 1 đến n. Đỉnh 1 là đỉnh gốc của cây, mỗi đỉnh đều có chứa một giá trị.

Bạn cần thực hiện q truy vấn, có hai loại truy vấn khác nhau:

  1. Thay đổi giá trị trên đỉnh s thành x;
  2. Tính tổng giá trị của các đỉnh trên đường đi từ đỉnh gốc (đỉnh 1) đến đỉnh s.

Input

  • Dòng đầu tiên chứa hai số nguyên dương nq: số lượng đỉnh và số lượng truy vấn;
  • Dòng tiếp theo chứa n số nguyên dương v1,v2,vn: giá trị của mỗi đỉnh;
  • Sau đó là n1 dòng mô tả các cạnh của cây. Mỗi dòng gồm hai số nguyên dương ab: thể hiện có cạnh nối giữa hai đỉnh a, b;
  • Cuối cùng là q dòng thể hiện các truy vấn. Mỗi truy vấn thuộc một trong hai dạng: 1 s x hoặc 2 s.

Output

  • In ra câu trả lời cho các truy vấn loại 2, mỗi số in trên một dòng.

Ràng buộc

  • 1n,q2×105;
  • 1a,b,sn;
  • 1vi,x109.

Ví dụ

Sample input
Copy
5 3
4 2 5 2 1
1 2
1 3
3 4
3 5
2 4
1 3 2
2 4
Sample output
Copy
11
8