[DHBB25 - DX33 - 11] Bài 2: Dãy số đẹp
Xem dạng PDFTrong trường hợp đề bài hiển thị không chính xác, bạn có thể tải đề bài tại đây: Đề bài
Dãy số ~a_1, a_2, \dots, a_M~ được gọi là dãy số đẹp nếu thoả mãn điều kiện: Nếu ~1 \le p_1 < p_2 < \dots < p_M~ thì ~a_{p_1} < a_{p_2} < \dots < a_{p_M}~.
Dãy số ~c~ được gọi là một dãy con của dãy ~d~ khi dãy ~c~ được tạo thành bằng cách xóa đi một số phần tử (có thể xoá toàn bộ hoặc không xoá phần tử nào) của dãy ~d~ mà không thay đổi trật tự sắp xếp vốn có của nó trong ~d~.
Cho dãy ~N~ số nguyên ~a~ có giá trị lần lượt ~a_1, a_2, \dots, a_N~ và một số nguyên ~x~. An có thể biến đổi dãy ~a~ như sau: Chọn một đoạn bất kỳ của dãy ~a~ (gồm các phần tử liên tiếp nhau) và tăng giá trị tất cả các phần tử trong đoạn đó thêm ~t~ (~-x \le t \le x~) (đoạn được chọn có thể rỗng). An thực hiện biến đổi sao cho sau khi hoàn thành có thể thu được dãy con là dãy số đẹp dài nhất.
Yêu cầu: Tìm độ dài dãy con là dãy số đẹp dài nhất sau khi An thực hiện biến đổi.
Input
- Dòng đầu tiên ghi hai số nguyên dương ~N~ và ~x~ (~1 \le N \le 2 \times 10^5~; ~x \le 10^9~);
- Dòng thứ hai ghi ~N~ số nguyên ~a_1, a_2, \dots, a_N~ cách nhau ít nhất một dấu cách. Giá trị các số không vượt quá ~10^9~.
Output
- Ghi ra một số nguyên là độ dài của dãy con là dãy số đẹp dài nhất tìm được.
Sample Input 1
8 10
7 3 5 12 2 7 3 4
Sample Output 1
5
Bình luận