题目 1597

「一本通 5.5 例 1」滑动窗口

查看题解 ↗GitHub ↗如何评测
题号
1597
时间限制
1000 ms
内存限制
128 MB
标签
数据结构队列

【题目描述】

原题来自:POJ 2823

给一个长度为 NN 的数组,一个长为 KK 的滑动窗体从最左端移至最右端,你只能看到窗口中的 KK 个数,每次窗体向右移动一位,如下图:

窗口

最小值

最大值

[1 3 −1] −3 5 3 6 7[1\ 3\ -1]\ -3\ 5\ 3\ 6\ 7

−1-1

33

1 [3 −1 −3] 5 3 6 71\ [3\ -1\ -3]\ 5\ 3\ 6\ 7

−3-3

33

1 3 [−1 −3 5] 3 6 71\ 3\ [-1\ -3\ 5]\ 3\ 6\ 7

−3-3

55

1 3 −1 [−3 5 3] 6 71\ 3\ -1\ [-3\ 5\ 3]\ 6\ 7

−3-3

55

1 3 −1 −3 [5 3 6] 71\ 3\ -1\ -3\ [5\ 3\ 6]\ 7

33

66

1 3 −1 −3 5 [3 6 7]1\ 3\ -1\ -3\ 5\ [3\ 6\ 7]

33

77

你的任务是找出窗体在各个位置时的最大值和最小值。

【输入】

第 11 行:两个整数 NN 和 KK;

第 22 行:NN 个整数,表示数组的 NN 个元素(≤2×1092\times 10^9 );

【输出】

第一行为滑动窗口从左向右移动到每个位置时的最小值,每个数之间用一个空格分开;

第二行为滑动窗口从左向右移动到每个位置时的最大值,每个数之间用一个空格分开。

【输入样例】

文本
8 3
1 3 -1 -3 5 3 6 7

【输出样例】

文本
\-1 -3 -3 -3 3 3
3 3 5 5 6 7

【提示】

据范围与提示:

对于 20% 的数据,K≤N≤1000K\leq N\leq 1000;

对于 50% 的数据,K≤N≤105K\leq N\leq 10^5 ;

对于 100% 的数据,K≤N≤106K\leq N\leq 10^6 。

【来源】

一本通在线评测

数据下载

题目 1597 的公开数据

正在读取文件列表…

常用命令

题目 1597 的 ROJ 命令

以下命令默认使用全局安装的 ROJ Skill,请在终端中直接执行;如果修改过 AGENT_HOME,请将命令中的 ~/.agents 替换为对应目录。