JOI 2018 - LthKthNumber

Xem PDF



Dạng bài
Ngôn ngữ cho phép
Assembly, Awk, C, C#, C++, Clang, Cobol, D, Groovy, Haskell, JS, Java, Kotlin, Lua, Node JS, OCaml, ObjectiveC, PHP, Pascal, Perl, Prolog, Pypy, Pypy 3, Python, Ruby, Rust, Scala, Scratch, Swift
Điểm: 1800 (p) Thời gian: 1.0s Bộ nhớ: 256M Input: bàn phím Output: màn hình

\(N\) tấm thẻ được xếp thành một hàng ngang. Tấm thẻ thứ \(i\) từ trái sang phải ghi số nguyên \(a_i\), với \(1 \le i \le N\).

JOI chơi một trò chơi với những tấm thẻ này. JOI chọn một đoạn gồm ít nhất \(K\) tấm thẻ liên tiếp và thực hiện các bước sau:

  1. Sắp xếp các thẻ đã chọn từ trái sang phải theo thứ tự không giảm của số ghi trên thẻ.
  2. Ghi ra giấy số trên tấm thẻ thứ \(K\) tính từ bên trái trong các thẻ vừa sắp xếp.
  3. Đưa tất cả các thẻ đã chọn về vị trí ban đầu.

JOI thực hiện thao tác này với mọi đoạn gồm ít nhất \(K\) thẻ liên tiếp. Nói cách khác, với mỗi cặp \((l,r)\) thỏa mãn \(1 \le l \le r \le N\)\(K \le r-l+1\), JOI ghi ra số nhỏ thứ \(K\) trong dãy \(a_l,a_{l+1},\ldots,a_r\).

Sau đó, JOI sắp xếp tất cả các số đã ghi ra theo thứ tự không giảm. Số thứ \(L\) từ trái sang phải trong dãy này là điểm số của JOI. Hãy tìm điểm số đó. Các lần xuất hiện của cùng một giá trị vẫn được tính riêng.

Dữ liệu vào

  • Dòng đầu chứa ba số nguyên \(N,K,L\).
  • Dòng thứ hai chứa \(N\) số nguyên \(a_1,a_2,\ldots,a_N\).

Dữ liệu ra

In ra trên một dòng điểm số của JOI.

Ràng buộc

  • \(1 \le N \le 200000\).
  • \(1 \le K \le N\).
  • \(1 \le a_i \le N\) với mọi \(1 \le i \le N\).
  • \(1 \le L\).
  • Số lượng số nguyên mà JOI ghi ra giấy không nhỏ hơn \(L\).

Phân nhóm

  1. Nhóm 1 (6 điểm): \(N \le 100\).
  2. Nhóm 2 (33 điểm): \(N \le 4000\).
  3. Nhóm 3 (61 điểm): Không có ràng buộc bổ sung.

Ví dụ

Ví dụ 1

Input
4 3 2
4 3 1 2
Output
3
Giải thích

Có ba cặp \((l,r)\) thỏa mãn \(1 \le l \le r \le N=4\)\(K=3 \le r-l+1\): \((1,3)\), \((1,4)\)\((2,4)\).

Số nhỏ thứ \(3\) trong các đoạn tương ứng lần lượt là \(4,3,3\). Số nhỏ thứ \(L=2\) trong các số này là \(3\), nên điểm của JOI là \(3\). Lưu ý rằng khi một số xuất hiện nhiều lần, mọi lần xuất hiện đều được tính.

Ví dụ 2

Input
5 3 3
1 5 2 2 4
Output
4
Giải thích

Các số JOI ghi ra là:

  • \(5\) ứng với \((l,r)=(1,3)\).
  • \(2\) ứng với \((l,r)=(1,4)\).
  • \(2\) ứng với \((l,r)=(1,5)\).
  • \(5\) ứng với \((l,r)=(2,4)\).
  • \(4\) ứng với \((l,r)=(2,5)\).
  • \(4\) ứng với \((l,r)=(3,5)\).

Số nhỏ thứ \(L=3\) trong các số này là \(4\).

Ví dụ 3

Input
6 2 9
1 5 3 4 2 4
Output
4

Ví dụ 4

Input
6 2 8
1 5 3 4 2 4
Output
3

Nguồn

JOI 2017/2018, vòng loại, bài 6: LthKthNumber. Đề bài của Ban tổ chức Olympic Tin học Nhật Bản.

Bình luận

Mới nhất
Tải bình luận...

Không có bình luận nào.

Kỳ thi: