Review in round 4 Câu D
Tham khảo đề bài:
Lời giải
Ta sắp xếp các đoạn theo chiều tăng dần .
Để tối ưu nhất, ta tham lam chọn các phần tử từ phải sang trái và chưa được chọn trước đó của đoạn
Chứng minh:
Xét hai đoạn và sau khi đã sắp xếp.
1) Trường hợp 1: giao :
Nếu ta chọn các phần tử thuộc đoạn thì thoả mãn được cùng lúc cả hai đoạn và .
Nếu ta chọn các phần tử thuộc nửa đoạn thì chỉ thoả mãn được đoạn mà không thoả mãn được đoạn .
Suy ra ưu tiên chọn các phần tử bên phải của đoạn
2) Trường hợp 2: không giao ().
- Trường hợp này, ta chọn phần tử nào trong đoạn thì chỉ thoả mãn được đoạn .
Các bước thực hiện liên tục từ đoạn tới đoạn như sau:
Nếu thì tham lam chọn các phần tử từ phải sang trái và chưa được chọn trước đó của đoạn .
Nếu thì xét tiếp đoạn .
Các thao tác tìm và tham lam chọn phần tử có thể sử dụng Segment Tree và tìm kiếm nhị phân để giải quyết
Độ phức tạp: . Code tham khảo
Comments