Cộng đường đi trên cây
Đề bài
Mô tả
Cho một cây có đỉnh đánh số từ đến , gốc tại đỉnh . Ban đầu giá trị tại mỗi đỉnh bằng .
Có thao tác, mỗi thao tác có dạng : cộng vào giá trị của mọi đỉnh nằm trên đường đi đơn từ đến (bao gồm cả và ).
Sau khi thực hiện đủ thao tác, hãy in ra giá trị cuối của từng đỉnh.
Dữ liệu vào
- Dòng 1: hai số nguyên và .
- dòng tiếp theo: mỗi dòng hai số nguyên và (, ) mô tả một cạnh nối hai đỉnh và .
- dòng tiếp theo: mỗi dòng ba số nguyên , , mô tả một thao tác.
Dữ liệu ra
Một dòng gồm số nguyên cách nhau bởi dấu cách: giá trị cuối của đỉnh .
Ràng buộc
- Cho phép (đường đi chỉ chứa một đỉnh).
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 5 2 1 2 1 3 2 4 2 5 4 3 10 5 5 7 |
10 10 10 10 7 | Thao tác 1: đường , cộng vào các đỉnh (đỉnh không nằm trên đường). Thao tác 2: đường chỉ gồm đỉnh , cộng vào đỉnh . |
| 3 3 1 2 2 3 1 3 5 2 3 4 1 1 1 |
6 9 9 | Đỉnh nhận . Đỉnh nhận . Đỉnh nhận . |
Ghi chú
- Đáp số tại mỗi đỉnh có thể lớn (tới khoảng ), hãy dùng kiểu số nguyên 64-bit.
Bình luận