George và những lá bài
Đề bài
Mô tả
Có lá bài xếp thành một hàng, đánh số từ đến từ trái sang phải. Lá bài thứ ghi số , và là một hoán vị của (tất cả các số đôi một khác nhau).
Bạn muốn hàng bài chỉ còn lại đúng lá, sao cho lá thứ (từ trái sang) trong hàng còn lại ghi số . Để đạt được điều đó, bạn thực hiện thao tác xoá đúng lần.
Trong một thao tác xoá, bạn chọn lá bài liên tiếp (một đoạn con liên tục trong hàng hiện tại). Gọi các số ghi trên chúng lần lượt là (từ trái sang phải). Sau đó bạn xoá lá bài có số nhỏ nhất trong đoạn đã chọn (do các số đôi một khác nhau nên lá này là duy nhất). Thao tác này mang lại cho bạn điểm.
Hãy tìm tổng số điểm lớn nhất có thể đạt được nếu bạn thực hiện các thao tác một cách tối ưu và cuối cùng thu được hàng bài đúng bằng .
Dữ liệu đảm bảo luôn tồn tại cách thực hiện để thu được hàng bài .
Dữ liệu vào
- Dòng đầu chứa hai số nguyên và .
- Dòng thứ hai chứa số nguyên — hàng bài ban đầu.
- Dòng thứ ba chứa số nguyên — hàng bài cần thu được.
Dữ liệu ra
- In ra một số nguyên duy nhất: tổng số điểm lớn nhất.
Ràng buộc
- , các đôi một khác nhau.
- là một dãy con (theo thứ tự vị trí) của và luôn có thể thu được.
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 3 2 2 1 3 1 3 |
1 | Chỉ cần xoá lá ghi số (ở vị trí ). Đoạn được chọn không thể lan sang phải vì lá ghi số phải giữ lại và nhỏ hơn , nên , thu được điểm. |
| 10 5 1 2 3 4 5 6 7 8 9 10 2 4 6 8 10 |
30 | Cần xoá các số lẻ. Xoá theo thứ tự giá trị tăng dần: xoá (chọn cả lá, ), xoá (), xoá (), xoá (), xoá (). Tổng . |
Bình luận