NC50528 滑动窗口

简介: NC50528 滑动窗口

题目: NC50528 滑动窗口 ,哈哈,我们今天来看一道稍微复杂一点的题嘛,这是选自牛客上的一道题,好了,我们一起来看看题意吧:

考虑到直接复制题目,或者截屏的方式不是很方便阅读,我就把直接题目链接放下面!

题目传送门: NC50528 滑动窗口

思路:

单调队列的模板题,没什么好说的!

我们来看看成功AC的代码吧:

#include<bits/stdc++.h>
using namespace std;
int n,k;
const int N=1000010;
int a[N];
deque<int> q;
int main(){
    ios::sync_with_stdio(false);
    cin>>n>>k;
    for(int i=1;i<=n;i++) cin>>a[i];
    for(int i=1;i<=n;i++){
        if(i-k>=q.front()) q.pop_front();//判断是否越界
        while(!q.empty()&&a[q.back()]>=a[i]) q.pop_back();
        q.push_back(i);
        if(i-k>=0){
            cout<<a[q.front()]<<" ";
        }
    }
    while(!q.empty()) q.pop_back();//清空
    cout<<"\n";
    for(int i=1;i<=n;i++){
        if(i-k>=q.front()) q.pop_front();
        while(!q.empty()&&a[q.back()]<=a[i]) q.pop_back();
        q.push_back(i);
        if(i-k>=0){
            cout<<a[q.front()]<<" ";
        }
    }
    return 0;
}


相关文章
|
10月前
|
数据采集 缓存 监控
代理IP在产品运营中的重要作用
在数字化时代,代理IP作为重要网络工具,通过突破地域限制、优化网络性能、保护数据安全、高效抓取市场数据、应对IP封锁及优化广告投放,助力企业实现业务增长和市场拓展。本文详细解析代理IP的作用与应用案例,为企业产品运营提供参考。
190 1
|
Web App开发 弹性计算 运维
快速部署1Panel运维面板
1Panel是一款Linux服务器管理面板,提供Web界面进行主机监控、文件、数据库和容器管理。本文介绍如何通过计算巢快速部署1Panel面板。
快速部署1Panel运维面板
|
存储 C# 关系型数据库
“云端融合:WPF应用无缝对接Azure与AWS——从Blob存储到RDS数据库,全面解析跨平台云服务集成的最佳实践”
【8月更文挑战第31天】本文探讨了如何将Windows Presentation Foundation(WPF)应用与Microsoft Azure和Amazon Web Services(AWS)两大主流云平台无缝集成。通过具体示例代码展示了如何利用Azure Blob Storage存储非结构化数据、Azure Cosmos DB进行分布式数据库操作;同时介绍了如何借助Amazon S3实现大规模数据存储及通过Amazon RDS简化数据库管理。这不仅提升了WPF应用的可扩展性和可用性,还降低了基础设施成本。
335 0
|
开发框架 前端开发 JavaScript
【前端】前端的三大主流框架
【前端】前端的三大主流框架
756 3
|
人工智能 自然语言处理 监控
RPA学习第一课 --初识RPA
RPA学习第一课 --初识RPA
8959 1
|
Linux 虚拟化
top中的st含义—虚拟化底层从你的vm里偷了多少资源
linux在top中打印中有st显示项,这一显示项单位为百分比,它的值表明你的系统花了百分之多少等待得到真正的cpu资源。 在正常情况下在云平台下st最好为0,这表明你的vm得到了所有必要的cpu资源。
4927 0
|
JavaScript 前端开发 编译器
Typescript vs Javascript 这两种流行编程语言之间的主要区别
TypeScript 是 JavaScript 的一个超集,它添加了静态类型、类、接口和其他一些特性。下面是 TypeScript 和 JavaScript 之间的主要区别:
994 0
|
存储 人工智能 编译器
最详细的【指针】详解---C语言从入门到精通
最详细的【指针】详解---C语言从入门到精通
1165 0
最详细的【指针】详解---C语言从入门到精通
|
机器学习/深度学习 编解码 计算机视觉
ResNet50 文艺复兴 | ViT 原作者让 ResNet50 精度达到82.8%,完美起飞!!!(二)
ResNet50 文艺复兴 | ViT 原作者让 ResNet50 精度达到82.8%,完美起飞!!!(二)
339 0
|
负载均衡 Java 中间件
一家中型互联网公司的架构演进之路(1)
一家中型互联网公司的架构演进之路
458 0