(clis.*)
Tí và Tèo rất yêu thích trò chơi với dãy số. Hôm nay, Tí cho Tèo một dãy \(a\ \)gồm \(n\ \)số nguyên \(a_{1},a_{2},..,a_{n}\) và một số nguyên \(x\). Việc tìm dãy con tăng dài nhất trong dãy \(a\) đã quá quen thuộc và dễ dàng với Tèo. Vì vậy, Tí đổi cách chơi như sau:
- Đầu tiên, Tèo chọn hai vị trí \(L\) và \(R\ (1 \leq L \leq R \leq n)\) trong dãy \(a\) và một số nguyên d \(( - x \leq d \leq x).\ \)
- Sau đó, Tèo sẽ thực hiện thao tác thay đổi giá trị của các phần tử từ vị trí \(L\) đến vị trí \(R\) bằng cách cộng thêm \(d\).
Gọi \(l\) là độ dài dãy con tăng nghiêm ngặt dài nhất của dãy \(a\) sau khi Tèo thực hiện thao tác thay đổi như trên.
Yêu cầu: Hãy lập trình tìm giá trị \(l\).
Dữ liệu vào:
- Dòng đầu tiên gồm hai số nguyên \(n\ \)và\(\ x\). Trong đó, \(n\) là số phần tử của dãy số và \(x\) là giới hạn cho giá trị tuyệt đối của \(d\) \((1 \leq n \leq 200000;\ 0 \leq x \leq 10^{9})\).
- Dòng thứ hai gồm\(\ n\) số nguyên \(a_{1},\ a_{2},\ ..,a_{n}\) \((1 \leq a_{i} \leq 10^{9};1 \leq i \leq n)\) là các số trong dãy ban đầu của Tí.
Kết quả: Ghi một số nguyên duy nhất là giá trị của \(l\ \)như mô tả ở bài toán.
Ví dụ:
Dữ liệu vào | Kết quả |
---|---|
9 6 1 2 3 9 6 5 7 8 1 | 7 |
Giải thích: Có thể chọn đoạn \(\lbrack 4,\ 4\rbrack\) và \(d = - 4\). Khi đó, cộng thêm \(d\) vào vị trí thứ \(4\) của dãy đã cho ta có dãy mới là: 1 2 3 5 6 5 7 8 1
Dãy con tăng dài nhất là 1 2 3 5 6 7 8 có độ dài \(l = 7\).
Ràng buộc dữ liệu:
- Có \(25\%\) số test ứng với \(x = 0\).
- Có \(45\%\) số test ứng với \(1 \leq n \leq 1000.\)
- Có \(30\%\) số test không có ràng buộc gì thêm.
Code tích cực |
---|
Trong 24h |
Trong 7 ngày |
|
Trong 30 ngày |
|
Thống kê |
---|
AC/Sub: 97887/180710 Pascal: 17121 C++: 130348 Python: 33199 Lượt xem/tải tests: 38905 |