4373 窗口 时间限制: 1 s 空间限制: 256000 KB
题目描述 Description
给你一个长度为N的数组,一个长为K的滑动的窗体从最左移至最右端,你只能见到窗口的K个数,每次窗体向右移动一位,如下表:

Window position Min value
Max value
[ 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
你的任务是找出窗口在各位置时的max value, min value.

输入描述 Input Description
第1行n,k,第2行为长度为n的数组

输出描述 Output Description
2行

第1行每个位置的min value

第2行每个位置的max value

样例输入 Sample Input
8 3

1 3 -1 -3 5 3 6 7

样例输出 Sample Output
-1 -3 -3 -3 3 3

3 3 5 5 6 7

数据范围及提示 Data Size & Hint
数据范围:20%: n<=500; 50%: n<=100000;100%: n<=1000000;

维护两个单调队列,递减的求最大值,递增的求最小值。

代码:

#include <iostream>
#include <cstdio>
using namespace std;
int dj[1000000+7],dz[1000000+7],num[1000000+7];
int n,m,H,T;
void zx()
{H=1,T=0;for(int i=1;i<=n;i++){while (H<=T&&num[i]<num[dz[T]]) T--;dz[++T]=i;if(i>=m){while (H<=T&&dz[H]<=i-m) H++;printf("%d ",num[dz[H]]);}}return ;
}
void zd()
{puts("");H=1,T=0;for(int j=1;j<=n;j++){while (T>=H&&num[j]>num[dj[T]]) T--;dj[++T]=j;if(j>=m){while (H<=T&&dj[H]<=j-m) H++;printf("%d ",num[dj[H]]);}}return ;
}
void work()
{scanf("%d%d",&n,&m);for(int i=1;i<=n;i++)scanf("%d",&num[i]); zx();zd();return ;
}
int main()
{work();return 0;
} 

代码贼好看同意的顶一下 O(∩_∩)O~~

窗口 (好久没写了╮(╯▽╰)╭)相关推荐

  1. 最近一到在混“智器粉丝团”,好久没写blog了~

    最近一直在混"智器粉丝团" ,好久没写blog了~ 那就写一篇"总结帖"吧,把最近在粉团的帖子作个备份,有"受精"的,有"无名&q ...

  2. 好久没写博客了,改天要把原博客资料整理下,弄个链接什么

    好久没来写了,主要是最近再弄webform下的东东--asp.net+ajax,可是进度很慢,所以也没办法写一些心得什么的.感觉有点对不起博客.嘿嘿 原来的博客,也好久没去了,当初搬家主要就是因为那个 ...

  3. 好久没写随笔了,最近收到朋友转发的一篇文章,心里产生极大共鸣,与大家共享一下~...

    HP大中华区总裁孙振耀撰文谈退休并畅谈人生 关于工作与生活的转帖 我有个有趣的观察,外企公司多的是 25-35 岁的白领, 40 岁以上的员工很少,二三十岁的外企员工是意气风发的,但外企公司 40 岁 ...

  4. 好久没写blog了。最近感觉自己老了

    不知道从什么时候开始.突然早上起床用凉水刷牙感到牙疼了.一疼就会疼上一天的时间.也不知道从什么时候开始吃牛肉的时候总是塞牙了.这是好像意识到自己是不是来了.虽然外表还想刚刚毕业的学生.内心还是有很多好 ...

  5. 好久没写了,重装了系统重新配置的Live Writer,看看效果:

    测试: class TestClass { static void C# Main(string[] args) { // Display the number of command line arg ...

  6. 好久没写东西了,发些我的卡通头像吧

    这个是使用msn新的cartoon服务做的,有兴趣的可以用自己的大头照片来试一下,很好玩的! MSN Cartoon (Beta) http://cartoon.msn.com.cn/

  7. 好久没写技术博了,说说最近的生活

    2017.7.7正式领双证毕业,至此结束了18年的学生生涯开启人生新篇章. 现在在入职百度的路上,机器学习算法策略工程师,凤巢. 感谢哈尔滨工业大学极佳的学习氛围以及我的导师同学给我的帮助. 很幸运的 ...

  8. 好久没到这个地方来.

    懒了,好久没写随笔了,学的东西不少,学过就忘记.没有整理,不成系统.最近也没什么好说的,瞎掰一通吧.--有时候觉得,我就是个愤青. 总感觉自己的思维很混乱,很没有头绪,东边拉袋水泥,西边拼块砖头的,没 ...

  9. 好久没更新日志了啊~!!今天发一个AS3的播放器

    好久没更新日志了啊~!! 今天上来帖一下这几天学习AS3的成果.用AS3写了个简陋的播放器,虽说基本的功能都全了, 而且没动一笔一划,图形界面也由graphics生成的. http://soccer. ...

最新文章

  1. Why Sleeping May Be More Important Than Studying
  2. ubuntu切换python3_Ubuntu 18.04 切换使用Python3
  3. 流程再造:信息化建设的最佳拍档
  4. NOIP模拟测试20「周·任·飞」
  5. 阿里云数据湖解决方案全面满足数据需求,帮助企业释放数据价值
  6. Java抽象类(Abstract Class)与接口(Interface)区别
  7. Django学习系列之ModelForm
  8. 电气工程cad实用教程电子版_电气CAD实用教程
  9. slf4j、log4j日志级别与配置
  10. python httpserver 支持ipv6
  11. PostgreSQL数据库
  12. html横向滚动字幕代码,js文字横向滚动特效
  13. 如何打开计算机本地组策略编辑器
  14. 游戏特效学习——3Dmax自学
  15. H2数据库中的数据类型
  16. 编写.bat执行jar包
  17. iOS 录制视频MOV格式转MP4
  18. 查找字幕资源的网址。射手网
  19. 部署NFS服务,以及安全的NFS服务
  20. 20_TodoList案例

热门文章

  1. 高中计算机学校分数线,高中职校录取分数线
  2. 计算机软硬件故障排除知识,计算机软硬件基础知识及常见故障排除方法(精选).doc...
  3. 【前端】内存泄露及解决方案
  4. PMSM的发展及研究现状
  5. 神经网络模型通用性分析,神经网络模型可解释性
  6. 原生javascript解锁CSDN强制关注才能阅读让文章自动展开
  7. c语言数据结构及算法实现代码,数据结构算法实现及解析―配合严蔚敏_吴伟民编著的数据结构(C语言版和C++版)(作者 高一凡)源代码...
  8. 手写Verilog用FPGA实现实时图像卷积,用Block Ram缓存图像
  9. 补齐 windows 运行库和运行环境(VC++、DirectX、.Net)
  10. 修复依赖服务器,依赖服务或组无法启动,小编教你这样解决依赖服务或组无法启动...