#G. 【基础】滑动窗口 /【模板】单调队列
【基础】滑动窗口 /【模板】单调队列
该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。
说明
【模板】单调队列
题目描述
给定一个长度为的数组。有一个大小为的滑动窗口从数组的最左端移动到最右端。你可以看到窗口中的个数字。窗口每次向右滑动一个数字的距离。
下面是一个例子:
数组是 [1 3 -1 -3 5 3 6 7], k = 3
窗口位置 | 最小值 | 最大值 |
---|---|---|
[1 3 -1] -3 5 3 6 7 | -1 | 3 |
1 [3 -1 -3] 5 3 6 7 | -3 | |
1 3 [-1 -3 5] 3 6 7 | - | 5 |
1 3 -1 [-3 5 3] 6 7 | -3 | |
1 3 -1 -3 [5 3 6] 7 | 3 | 6 |
1 3 -1 -3 5 [3 6 7] | 7 |
你的任务是得到滑动窗口在每个位置时的最大值和最小值。
输入格式
输入包括两行。
第一行包括和,分别表示数组的长度和窗口的大小。
第二行包括个数字。
输出格式
输出包括两行。
第一行包括窗口从左至右移动的每个位置的最小值。
第二行包括窗口从左至右移动的每个位置的最大值。
样例
8 3
1 3 -1 -3 5 3 6 7
-1 -3 -3 -3 3 3
3 3 5 5 6 7
数据范围
来源
- 洛谷P1886
- POJ2823