问题 E: 会移动的盒子
题目描述
给你一个长度为n的数组,现在有一个可以移动的盒子,盒子的大小为k,yzy是个很喜欢思考的人,他突然有个想法,如果把这个大小为k的盒子放到这个数组上,那他便可以有n-k+1种放法,现在他想要知道所有的放法的盒子里的最大值和最小值是多少,这对yzy来说真的是再简单不过了(没错这道题特意给你搞的)。
输入
测试样例由多组测试数据组成。输每组测试数据第一行输入一个整数 n(1=<n<=1000000)和 一个整数k (k<=n);
紧接着输入n个整数ai(-231<ai<231-1)。
输出
对于每组测试数据。第一行输出所有盒子依次的最小值,第二行输出依次的最大值
样例输入
10 3
3 -4 4 -2 5 -3 -3 5 3 2
样例输出
-4 -4 -2 -3 -3 -3 -3 2
4 4 5 5 5 5 5 5
#include<bits/stdc++.h>
using namespace std;
int n,k;
int b[1000005];
int mi[1000005],mx[1000005];
struct s{int num,id;//num表示值,id表示下标
}a[1000005];
void getmin()
{int head=1,tail=0;for(int i=1;i<=k;i++){while(head<=tail&&a[tail].num>=b[i]){tail--;//维护单调性 }tail++;a[tail].num=b[i],a[tail].id=i;}for(int i=k;i<=n;i++){while(head<=tail&&a[tail].num>=b[i]){tail--;//维护单调性 }tail++;a[tail].num=b[i],a[tail].id=i;while(a[head].id<=i-k)//维护队列长度k以内 {head++;}mi[i-k]=a[head].num;}
}
void getmax()
{int head=1,tail=0;for(int i=1;i<=k;i++){while(head<=tail&&a[tail].num<=b[i]){tail--;//维护单调性 }tail++;a[tail].num=b[i],a[tail].id=i;}for(int i=k;i<=n;i++){while(head<=tail&&a[tail].num<=b[i]){tail--;//维护单调性 }tail++;a[tail].num=b[i],a[tail].id=i;while(a[head].id<=i-k)//维护队列长度k以内 {head++;}mx[i-k]=a[head].num;}
}
int main()
{while(~scanf("%d%d",&n,&k)){for(int i=1;i<=n;i++){scanf("%d",&b[i]);}getmin();getmax();for(int i=0;i<=n-k;i++){if(i==0){printf("%d",mi[i]);}elseprintf(" %d",mi[i]);}printf("\n");for(int i=0;i<=n-k;i++){if(i==0){printf("%d",mx[i]);}elseprintf(" %d",mx[i]);}printf("\n");}return 0;
}
问题 E: 会移动的盒子相关推荐
- HarmonyOS UI开发 AdaptiveBoxLayout(自适应盒子布局) 的使用
AdaptiveBoxLayout 是什么 AdaptiveBoxLayout 是自适应盒子布局,该布局提供了在不同屏幕尺寸设备上的自适应布局能力,主要用于相同级别的多个组件需要在不同屏幕尺寸设备上自 ...
- 创建一个水平盒子java_盒子模型理解
HTML CSS + DIV实现整体布局 1.技术目标: 开发符合W3C标准的Web页面 理解盒子模型 实现DIV+CSS整体布局 2.什么是W3C标准? W3C:World Wide Web Con ...
- 【Qt】Qt样式表总结(四):CSS盒子模型
官网:http://doc.qt.io/qt-5/stylesheet-customizing.html#box-model [Qt]Qt样式表总结(一):选择器 [Qt]Qt样式表总结(二):冲突和 ...
- css盒子教程,彻底弄懂css盒子模式(div布局快速入门)_css教程
实现结构与表现分离 在真正开始布局实践之前,再来认识一件事--结构和表现相分离,这也用CSS布局的特色所在,结构与表现分离后,代码才简洁,更新才方便,这不正是我们学习CSS的目的所在吗?举个例来说P是 ...
- CSS之布局(盒子的尺寸)
盒子的尺寸: <!DOCTYPE html> <html><head><meta charset="UTF-8"><title ...
- CSS之布局(盒子的垂直布局)
盒子的垂直布局: <!DOCTYPE html> <html><head><meta charset="UTF-8"><tit ...
- CSS之布局(盒子的水平布局)
盒子的水平布局: <!DOCTYPE html> <html><head><meta charset="UTF-8"><tit ...
- CSS之布局(盒子模型--外边距)
盒子模型--外边距: <!DOCTYPE html> <html><head><meta charset="UTF-8"><t ...
- CSS之布局(盒子模型--内边距)
盒子模型--内边距: <!DOCTYPE html> <html><head><meta charset="UTF-8"><t ...
- CSS之布局(盒子模型—边框)
盒子模型-边框: <!DOCTYPE html> <html><head><meta charset="UTF-8"><tit ...
最新文章
- 30+的程序猿,路在何方?
- Windows Vista和XP比较
- UA PHYS515 电磁理论I 麦克斯韦方程组基础4 介质中的麦克斯韦方程
- RDA8955烧写程序摘要
- css2.1中 firefox 与IE 对margin-top的不同解释
- Mac下Sublime text2中文乱码问题的解决
- table 权限 展示页面
- 力扣 26.删除有序数组中的重复元素
- linux mysql端口启动失败怎么办,Linux下apache mysql等服务修改默认端口后无法正常启动解决办法...
- 由VB的KeyCode和KeyAscii到扫描码、虚拟码的思考
- 手机型号修改 修改手机型号,在QQ空间想朋友展示个性化的手机型号
- C#服务端如何获取外网IP
- c语言家谱管理系统不是二叉树,二叉树实现的简单家谱管理系统
- introduction与related work
- 还原/修改XP任务栏
- Django系列(1)-自动化生成API文档
- Neo.4j 使用总结
- 设置centos笔记本合盖不休眠
- django项目启动加载训练的模型报错OSError: Unable to open file (unable to open file: name = ‘model/model_weigh完美解决
- 导热系数仪 德国PSL 德国培赛乐 快速阻垢性能测试仪 抗车辙剂 摇摆槽 水合物摇摆槽 水合物相变的固-液-气多相流动 水合物阻聚剂分析 沥青硫化氢分析 沥青絮凝点 沥青絮凝点测定仪 油田注水阻垢剂
热门文章
- “极乐净土”时隔7年再度席卷B站,二次元魂藏不住了!
- 阿里云如何通过本地客户端连接Windows实例
- 中职计算机课改论文题目,中职计算机教育论文10篇_发表之家
- java实现word文档转换pdf文档并且添加水印功能使用插件Aspose.Words
- Geology Routine 中国地区地理常识【附有地图分析】
- python单词软件哪个好_还在用背单词App?使用Python开发英语单词自测工具,助你逆袭单词王!...
- 超详细C语言版数据结构:图的深度优先遍历(推荐收藏)
- 光电开关的工作原理与分类
- 函数平滑 smooth
- ConfigurableListableBeanFactoryBeanFactory的集大成者