Cho N số nguyên và K. Mô phỏng ImmutableList.Builder bằng List giữ các phần tử cửa sổ đã sắp tăng dần. Mỗi bước i từ 0 đến N-1: chèn a[i] vào builder bằng List.BinarySearch, nếu builder.Count > K thì gỡ a[i-K] (dùng BinarySearch để tìm vị trí). Khi i ≥ K-1, in median = builder[K/2] (0-based, làm tròn xuống), mỗi số một dòng.
Dòng 1: N K. Dòng 2: N số nguyên.
1 ≤ K ≤ N ≤ 5000; |a_i| ≤ 10^9.
N-K+1 dòng, mỗi dòng là median của cửa sổ.
Ví dụ:
Đầu vào:
5 3
1 3 2 5 4
Đầu ra:
2
3
4
Giải thích:
Đang tải editor...