Tập con trọng số lớn nhất
Đề bài
Mô tả
Cho một cây gồm đỉnh, đánh số từ đến . Đỉnh thứ có trọng số .
Khoảng cách giữa hai đỉnh trong cây là số cạnh trên đường đi đơn giản nối chúng.
Hãy tìm một tập con các đỉnh có tổng trọng số lớn nhất (trọng số của tập là tổng trọng số các đỉnh trong tập), sao cho không tồn tại cặp đỉnh nào trong tập có khoảng cách nhỏ hơn hoặc bằng .
Dữ liệu vào
- Dòng đầu chứa hai số nguyên và : số đỉnh của cây và ràng buộc khoảng cách.
- Dòng thứ hai chứa số nguyên : trọng số các đỉnh.
- dòng tiếp theo, mỗi dòng chứa hai số nguyên và mô tả một cạnh nối đỉnh và đỉnh .
Dữ liệu đảm bảo các cạnh tạo thành một cây.
Dữ liệu ra
In ra một số nguyên: tổng trọng số lớn nhất của tập con mà mọi cặp đỉnh trong tập đều có khoảng cách lớn hơn .
Ràng buộc
- ,
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 7 2 2 1 2 1 2 1 1 6 4 1 5 3 1 2 3 7 5 7 4 |
4 | Chọn các đỉnh (trọng số ): mọi cặp đều có khoảng cách lớn hơn , tổng bằng . |
| 5 1 1 2 3 4 5 1 2 2 3 3 4 3 5 |
11 | Cây là đường rẽ nhánh và tại đỉnh . Chọn các đỉnh (trọng số ): mọi cặp có khoảng cách lớn hơn , tổng bằng . |
Bình luận