Trồng rừng
Đề bài
Mô tả
Một vùng đồi có lô đất, đánh số từ đến , nối với nhau bởi lối mòn sao cho từ mỗi lô có thể đi tới mọi lô khác (các lô và lối mòn tạo thành một cây). Nếu trồng rừng trên lô , ban quản lý thu được giá trị ; giá trị này có thể âm (lô đất xấu, trồng sẽ lỗ). Để chống cháy lan, không được trồng rừng trên hai lô nối trực tiếp với nhau bởi một lối mòn.
Yêu cầu: Chọn một tập các lô để trồng rừng (có thể không chọn lô nào) sao cho tổng giá trị lớn nhất, và chỉ ra một cách chọn như vậy.
Dữ liệu vào
- Dòng đầu tiên chứa số nguyên .
- Dòng thứ hai chứa số nguyên .
- Mỗi dòng trong dòng tiếp theo chứa hai số nguyên : có lối mòn nối lô và lô .
Dữ liệu ra
- Dòng thứ nhất in tổng giá trị lớn nhất.
- Dòng thứ hai in số là số lô được chọn.
- Dòng thứ ba in số hiệu lô được chọn, theo thứ tự bất kỳ (để trống nếu ).
Nếu có nhiều cách chọn đạt tổng lớn nhất, in một cách bất kỳ.
Ràng buộc
- .
- .
- , các lối mòn tạo thành một cây.
Subtasks
- Subtask 1 ( số điểm): .
- Subtask 2 ( số điểm): lối mòn thứ nối lô và lô (các lô xếp thành một hàng).
- Subtask 3 ( số điểm): không có ràng buộc gì thêm.
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 5 3 2 5 -1 4 1 2 1 3 3 4 3 5 |
7 2 2 3 |
Trồng trên lô và lô được . Chọn lô và lô cũng được , đều được chấp nhận. |
| 4 -5 -2 -7 -1 1 2 2 3 3 4 |
0 0 |
Mọi lô đều lỗ, nên không trồng lô nào. |
Bình luận