Chọn ĐTQG ĐHSPHN 2026 - Đoàn tàu

Xem dạng PDF

Gửi bài giải

Điểm: 50,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 1G
Input: stdin
Output: stdout

Tác giả:
Dạng bài
Ngôn ngữ cho phép
C, C++, Java, Output Only, Pascal, PyPy, Python, Scratch, TEXT

Một đường ray gồm ~10^9~ vị trí, được đánh số từ ~1~ đến ~10^9~. Có ~n~ toa tàu; toa thứ ~i~ mang nhãn ~a_i~.

Các toa được đẩy lần lượt vào đường ray từ phía vị trí ~1~. Khi toa mang nhãn ~a_i~ được đẩy vào, nó tiến về phía trước cho đến khi đến vị trí ~a_i~, hoặc dừng tại ô ngay trước toa đầu tiên cản đường, tùy sự kiện nào xảy ra trước. Mỗi vị trí chỉ chứa được một toa.

Bạn được chọn một số toa và thứ tự đẩy chúng vào ray. Hãy tìm số toa lớn nhất sao cho ở trạng thái cuối cùng, tất cả các toa đã chọn chiếm một đoạn vị trí liên tiếp. Không bắt buộc phải sử dụng hết các toa.

Input

  • Dòng đầu chứa số nguyên ~n~ (~1 \le n \le 10^6~).

  • Dòng thứ hai chứa ~n~ số nguyên ~a_1,a_2,\dots,a_n~ (~1 \le a_i \le 10^9~).

Output

In ra số toa lớn nhất có thể chọn.

Scoring

Subtask Điểm Ràng buộc
1 ~25\%~ ~n \le 8~
2 ~25\%~ ~n \le 10^4~
3 ~25\%~ ~n \le 10^5~
4 ~25\%~ Không có giới hạn gì thêm

Sample Input 1

5
2 4 4 4 9

Sample Output 1

4

Notes

Có thể lần lượt đẩy bốn toa mang nhãn ~4,9,4,4~. Chúng dừng tại các vị trí ~4,3,2,1~, nên chiếm đúng đoạn ~[1,4]~. Không có cách chọn cả năm toa mà vẫn tạo thành một đoạn liên tiếp.


Bình luận

Hãy đọc nội quy trước khi bình luận.


Không có bình luận tại thời điểm này.