博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
滑行的窗口
阅读量:5086 次
发布时间:2019-06-13

本文共 1700 字,大约阅读时间需要 5 分钟。

【题目描述】:

给定一个长度为n的数列a,再给定一个长度为k的滑动窗口,从第一个数字开始依次框定k个数字,求每次框定的数字中的最大值和最小值,依次输出所有的这些值。下面有一个例子数组是 [1 3 1 3 5 6 7] , k 是3:

窗口位置              窗口中的最小值   窗口中的最大值[1  3  -1] -3  5  3  6  7            -1            3 1 [3  -1  -3] 5  3  6  7            -3            3 1  3 [-1  -3  5] 3  6  7            -3            5 1  3  -1 [-3  5  3] 6  7            -3            5 1  3  -1  -3 [5  3  6] 7             3            6 1  3  -1  -3  5 [3  6  7]            3            7

【输入描述】:

第一行包含两个整数 n 和 k ,分别表示数组的长度和滑动窗口长度。

第二行n个整数,表示数列元素的值。

【输出描述】:

第一行从左到右窗口看到的最小值。

第二行从左到右窗口看到的最大值。

【样例输入】:

8 31 3 -1 -3 5 3 6 7

【样例输出】:

-1 -3 -3 -3 3 33 3 5 5 6 7

【时间限制、数据范围及描述】:

时间:1s 空间:64M

30%:n<=100 k<=20

60%:n<=5000 k<=20

100%:n<=10^6,每个元素不操过int类型

需要读入输出优化

转载于:https://www.cnblogs.com/kanchuang/p/11194144.html

你可能感兴趣的文章
程序员的数学
查看>>
聚合与组合
查看>>
jQuery如何获得select选中的值?input单选radio选中的值
查看>>
设计模式 之 享元模式
查看>>
如何理解汉诺塔
查看>>
洛谷 P2089 烤鸡【DFS递归/10重枚举】
查看>>
15 FFT及其框图实现
查看>>
Linux基本操作
查看>>
osg ifc ifccolumn
查看>>
C++ STL partial_sort
查看>>
3.0.35 platform 设备资源和数据
查看>>
centos redis 安装过程,解决办法
查看>>
IOS小技巧整理
查看>>
WebDriverExtensionsByC#
查看>>
我眼中的技术地图
查看>>
lc 145. Binary Tree Postorder Traversal
查看>>
sublime 配置java运行环境
查看>>
在centos上开关tomcat
查看>>
重启rabbitmq服务
查看>>
正则表达式(进阶篇)
查看>>