You are given an array of n integers. Your task is to calculate the median of each window of k elements, from left to right.
The median is the middle element when the elements are sorted. If the number of elements is even, there are two possible medians and we assume that the median is the smaller of them.
Visualization of sample input:
[2 4 3] 5 8 1 2 1: 3
2 [4 3 5] 8 1 2 1: 4
2 4 [3 5 8] 1 2 1: 5
2 4 3 [5 8 1] 2 1: 5
2 4 3 5 [8 1 2] 1: 2
2 4 3 5 8 [1 2 1]: 1
The first input line contains two integers n and k: the number of elements and the size of the window.
Then there are n integers x1,x2,…,xn: the contents of the array.
- 1 <= k <= n <= 2 * 105
- 1 <= xi <= 109
Print n−k+1 values: the medians.
Please append a space after each number, and add a newline at the end of the output.