Bỏ qua đến nội dung
Kho đề HSG Tin 9Đề thi cấp tỉnh/thành phố

Bài 4 · Lập trình

Dãy số

Điểm
3 điểm
Thời gian
1 giây
Tên chương trình
seq.*
Vào / Ra
seq.inp → seq.out

Đề bài

Cho dãy gồm nn số tự nhiên a1,a2,a3,…,ana_1, a_2, a_3, \dots, a_n các số aia_i (1≤i≤n)(1 \le i \le n) không quá mm 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ể.

Dữ liệu vàoseq.inp

Trong tệp seq.inp gồm 2 dòng:

  • Dòng đầu ghi hai số nguyên m,nm, n (1≤n<m≤106)(1 \le n < m \le 10^6).
  • Dòng thứ hai chứa nn số tự nhiên đôi một khác nhau không lớn hơn mm.

Kết quả raseq.out

Ghi ra tệp seq.out độ 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.

Ràng buộc

  • 40% số test ứng với 40% số điểm có: 1≤n≤1001 \le n \le 100;
  • 30% số test ứng với 30% số điểm có: 100<n≤1000100 < n \le 1000;
  • 30% số test ứng với 30% số điểm có: 1000<n<1061000 < n < 10^6.

Ví dụ

Dữ liệu vàoseq.inp
8 5
8 2 0 5 7
Kết quả raseq.out
4

Giải thích

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.

Thuộc đề thi

Đề thi chọn học sinh giỏi lớp 9 THCS cấp tỉnh năm học 2024-2025 — Môn: Tin học

Ninh Bình · Cấp tỉnh · Năm học 2024-2025