Bài 4. Dãy số (HSG 9 Ninh Bình 2024-2025)
Xem PDF
Điểm:
1300
Thời gian:
1.0s
Bộ nhớ:
977M
Input:
bàn phím
Output:
màn hình
Cho dãy gồm \(n\) số tự nhiên \(a_1, a_2, a_3,\ldots, a_n\), các số \(a_i\) \((1 \leq i \leq n)\) không quá \(m\) và có giá trị đôi một khác nhau, trong đó có đúng một số có giá trị bằng \(0\).
Yêu cầu: Thay thế số \(0\) thành một giá trị bất kì không được trùng với các giá trị đã có để nhận được một dãy con có các giá trị liên tiếp dài nhất có thể.
Input
- Dòng đầu ghi hai số nguyên \(m, n\) \((1 \leq n < m \leq 10^6)\)
- Dòng thứ hai chứa \(n\) số tự nhiên đôi một khác nhau không lớn hơn \(m\)
Output
- Ghi ra một số nguyên duy nhất là độ dài của dãy con có giá trị liên tiếp dài nhất có thể đạt được sau khi thay đổi giá trị của số \(0\)
Example
Test 1
Input
8 5
8 2 0 5 7
Output
4
Note
Ta có thể gán giá trị \(6\) cho phần tử có giá trị \(0\), khi đó dãy trở thành \(8, 2, 6, 5, 7\). Dễ thấy dãy con \(8, 6, 5, 7\) có các phần tử có giá trị liên tiếp nhau là \(5, 6, 7, 8\) và có độ dài \(4\) là dài nhất.
Scoring
- \(40\%\) số test ứng với \(40\%\) số điểm có: \(1 \leq n \leq 100\)
- \(30\%\) số test ứng với \(30\%\) số điểm có: \(100 < n \leq 1000\)
- \(30\%\) số test ứng với \(30\%\) số điểm có: \(1000 < n < 10^6\)
Bình luận