7219. 滑动窗口中位数 (Sliding Window Median)
时间限制:1000 MS 内存限制:512 MB
题目描述
## 题目描述 给定一个含有 $n$ 个整数的数组。你的任务是计算从左到右每个大小为 $k$ 的窗口内的中位数。 中位数是指元素按非降序排序后的中间元素。如果元素个数为偶数,则存在两个位置居中的元素,我们约定中位数为其中较小的那一个。 ## 输入格式 第一行包含两个整数 $n$ 和 $k$,分别表示数组元素数量和窗口大小。 第二行包含 $n$ 个整数 $x\_1, x\_2, \dots, x\_n$,表示数组的具体内容。 ## 输出格式 输出一行 $n - k + 1$ 个整数,依次表示每个窗口内的中位数,整数之间用空格隔开。 ## 输入输出样例 ### 输入 #1 ``` 8 3 2 4 3 5 8 1 2 1 ``` ### 输出 #1 ``` 3 4 5 5 2 1 ``` ## 说明/提示 ### 数据规模与约定 * $1 \le k \le n \le 2 \cdot 10^5$ * $1 \le x\_i \le 10^9$