poj 2823

POJ-2823 滑动窗口最大/最小值问题 POJ(北京大学算法练习网站)平台可提交题目代码在本篇文章中,我们将介绍滑动窗口问题,并采用两种方法进行求解:🔹 方法 1:普通二重循环(暴力法) 🔹 方法 2:双端队列(Deque) 阅读详情

题意:
你去看图就明白了,单调队列模板题

思路:

代码:

#include <cstdio>
#include <iostream>
#include <iomanip>
#include <string>
#include <cstdlib>
#include <cstring>
#include <queue>
#include <set>
#include <vector>
#include <map>
#include <algorithm>
#include <cmath>
#include <stack>

#define INF 0x3f3f3f3f
#define IMAX 2147483646
#define LINF 0x3f3f3f3f3f3f3f3f
#define ll long long
#define ull unsigned long long
#define uint unsigned int

using namespace std;

int n,m, a[1111111], que[1111111], l, r;

int main() {
	scanf("%d%d", &n,&m);
	for (int i = 1; i <= n; i++)
		scanf("%d", a + i);
	l = r = 0;
	for (int i = 1; i <= n; i++) {
		while (r > l&&a[que[r - 1]] >= a[i])r--;
		que[r++] = i;
		if (i >= m)printf("%d ", a[que[l]]);
		if (i - que[l] + 1 >= m)l++;
	}
	printf("\n");
	l = r = 0;
	for (int i = 1; i <= n; i++) {
		while (r > l&&a[que[r - 1]] <= a[i])r--;
		que[r++] = i;
		if (i >= m)printf("%d ", a[que[l]]);
		if (i - que[l] + 1 >= m)l++;
	}
	printf("\n");
	
	return 0;
}
华为云HCS解决方案笔记HUAWEI CLOUD Stack【面试篇】 华为云解决方案介绍、华为云服务介绍,华为云网络平面规划等 阅读详情

相关推荐

国产FPGA开发实战:紫光同创编程软件中的约束文件详解与常见问题

本文详细解析了紫光同创FPGA编程软件中约束文件的关键配置技巧与常见问题。通过基础架构解析、时钟约束实践、物理约束调控及典型问题排查指南,帮助开发者高效掌握国产FPGA开发中的约束文件应用,提升开发效率与设计稳定性。

gin88的博客 903

POJ2823 单调队列

POJ2823 http://poj.org/problem?id=2823 最基础的单调队列,说是数据结构,其实就是一种更新数组数据的方法。 之前还准备用deque,超时了,直接head,tail快得多。 一直把删除队首过期元素写在删除队尾之前,就一直WA,尼玛换一下顺序就好了。 1 #include 2 #include 3 #include 4 //#defi

Macan - 生活点滴 312

AI智能体项目管理框架agent-pm:从原理到实战的多智能体协作指南

在人工智能和自动化技术快速发展的今天,多智能体系统已成为实现复杂任务自动化的重要技术路径。其核心原理在于通过任务分解、角色分配和状态管理,让多个AI智能体像人类团队一样协同工作,从而突破单个模型的性能边界。这种架构的技术价值在于将软件工程中成熟的项目管理方法论引入AI领域,显著提升了自动化流程的可预测性、可观测性和可复用性。在实际应用场景中,多智能体协作框架能够高效处理从代码开发、文档撰写到数据分析等一系列任务,尤其适合需要多步骤、多专业协同的复杂项目。本文聚焦的agent-pm框架,正是这一领域的典型实践

weixin_42533910的博客 714

POJ-2823-Sliding Window

POJ-2823-Sliding Window http://poj.org/problem?id=2823 求区间的最大值与最小值,线段树即可,C++过了,G++超时,囧 #include #include #include #include using namespace std; #define N 1000005 struct cam { int x; int y; int

菜鸟的程序人生 1076

Qt5.14.2+VS2017开发环境搭建全流程(含插件配置与项目测试)

本文详细介绍了Qt5.14.2与VS2017开发环境的完整搭建流程,包括软件安装、插件配置、环境变量设置以及项目测试。特别针对实际开发中常见的配置问题提供解决方案,帮助C++开发者快速搭建高效的Qt开发环境。

weixin_28419039的博客 217

TL431过压保护电路实战:5.5V阈值设计全流程(附MOSFET选型建议)

本文详细介绍了基于TL431和MOSFET构建5.5V阈值过压保护电路的完整设计流程。内容涵盖核心原理、阈值计算、驱动电路设计,并重点针对大电流应用场景,提供了MOSFET选型与散热处理的实战建议,帮助工程师打造可靠高效的电源保护方案。

weixin_28327051的博客 535

POJ2823 经典单调队列

POJ2823 单调队列 题目地址poj.org/problem?id=2823 视频讲解地址https://www.bilibili.com/video/av23189029?from=search&seid=7739016115400904464 给你一个长度为N的数组,一个长为K滑动的窗体从最左移至最右端,你只能见到窗口的K个数,每次窗体向右移动一位。你的任务是找出窗口在各位置时的最...

wangkr ‘s blog 311

告别臃肿VS!仅用Visual Studio 2022 Build Tools为Qt 5.12.12配置MSVC2017开发环境

本文详细介绍了如何仅使用Visual Studio 2022 Build Tools为Qt 5.12.12配置MSVC2017开发环境,避免安装臃肿的完整VS。通过精准选择组件、配置Qt Creator编译器和优化Kit设置,实现高效、精简的Windows平台Qt开发环境搭建,特别适合追求性能和资源优化的开发者。

weixin_30340617的博客 349

POj 2823

比较好用的就是单调队列了,时间复杂度为O(N),这样做出来的时间是5500ms左右,算是POj上该题的平均时间。 代码如下: // POJ 2823 //2012-8-6 //wxping #define Max 1000000 #include #include typedef struct { int date,pos; }Queue; Queue qumax[Ma

wrong_answer的专栏 308

【AI测试必学】DeepSeek API 快速入门:获取 API Key 与调用 API 步骤详解

DeepSeek API 使用与 OpenAI 兼容的格式,可以通过修改配置使用 OpenAI SDK。生成的 API Key 只会显示一次,请妥善保存。注册并登录账号,进入左侧导航栏的。创建 API Key。

blues_C的博客 1万+

OpenStack 之 Epoxy版本 部署实战

OpenStack Epoxy 是 OpenStack 的第 31 个版本,其版本号为 2025.1,于 2025 年 4 月 2 日正式发布。

求知若渴,虚心若愚。 235

POJ2739 + POJ2823 单调队列

今天做了两道题,都是关于队列的题。 POJ2739: 好久不刷题。。连POJ的水题都不会了。。。心情复杂.jpg 这道题很明显要先素数筛一下,然后进行处理。我一开始想到了前缀和和树状数组,但发现不对,没法用。。后来看了题目下的评论(vjude中),一下子想到了单调队列,但这道题很简单用队列足够了。我用数组模拟了一下,就是记录一个head(队头)和tmp(当前的连续素数和),从前往后搜,当tm...

A confused programmer 433

【JTAG】1149.6协议详解

JTAG1149.6协议是1149.1协议中Boundary-Scan结构的扩展,1149.1对交流耦合、差分或两者兼有的情况并没有得到充分的处理。该协议支持新的I/O测试结构。需要时变(AC)信号的高级I/O引脚允许测试它们之间的连接,这包括所有差分信号引脚或单端信号引脚,通过设计支持交流耦合。..................

xuhe0206的博客 4573

POJ2823 Sliding Window

POJ2823 筱柒Littleseven QQ:3534947775 题目链接 #include <iostream> #include <cstdio> #include <algorithm> #include <cstring> #define maxn 1000100 using namespace std; int n,k,head,...

筱柒LittleSeven 127

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

滑动窗口POJ2823

滑动窗口POJ2823 思路 题干在这:POJ2823 写一个单调队列就好 ac代码 #include<cstdio> #include<iostream> #include<algorithm> #include<cstdlib> #include<queue> #include<cstring> #include<v...

没有自旋的π介子 264

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

POJ - 2823 Sliding Window

https://vjudge.net/problem/POJ-2823 POJ - 2823 Sliding Window题目AC代码 题目 An array of size n ≤ 106 is given to you. There is a sliding window of size k which is moving from the very left of the array to the very right. You can only see the k numbers in the wi

斯文~ 358

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

poj2823 单调队列以及双端队列(deque)

题目链接:http://poj.org/problem?id=2823 双端队列的使用:http://blog.youkuaiyun.com/ayw_hehe/article/details/6636765 #include #include #include #include #include #include #include #include #define loop(a,b,c)

SCAU_BIN的博客 1213

poj 2823 参考的优先队列

poj 2823 感觉没什么大区别,怎么就RE呢?????? #include #include #include using namespace std; int a[1000011];//数组数据 int OutMin[1000011];//最小值 int OutMax[1000011];//最大值 int cnt1=0; int cnt2=0;

cfzjxz的专栏 517

poj 2823 单调队列 入门 代码附注释

关于单调队列的介绍请移步:http://xuyemin520.is-programmer.com/posts/25964 结合poj2823理解比较好:http://poj.org/problem?id=2823 代码如下(跑得比较慢): #include const int Maxn=1000000+100; int n,k; int id[Maxn],minn[Maxn],ma

wishcxz_acm 791

poj2823 线段树模板题题解

http://poj.org/problem?id=2823 给你一组数字,滚动窗口,每次只能看见几个数字,(每次左边出去一个,右边进来一个)求每次的最大数字和最小数字,做了三遍啊啊啊啊。。。。 第一想法比较暴力,判断上一次是不是第一个值是最大的或者最小的,如果是,就重新比较,不是就拿上次的最大值或者最小值和最新加入窗口的值比较。 代码如下(超时) 如果是noj应该可以过23333~

zjy2015302395的博客 1031

poj2823(单调队列)

题目链接:http://poj.org/problem?id=2823 思路:模板题 #pragma GCC optimize(2) #include &lt;cstdio&gt; #include &lt;cstdlib&gt; #include &lt;cstring&gt; #include &lt;bitset&gt; #include &lt;cmath&gt; #include ...

llmxby 303

POJ - 2823 Sliding Window(单调队列RMQ)

http://poj.org/problem?id=2823 先是用stl里的deque结果TLE了,然后手工实现deque,5000MS AC了 #include using namespace std; const int MAX_N = 1e6+1; int N, K; int a[MAX_N]; int que[MAX_N][2], front, tail; void insert(

NightWind 794

POJ 2823 Sliding Window

被逼着写的一个题,以前觉得难度很大的东西,一旦有动力去好好学习,其实真的并没有那么难 ACM代码其实没有多少行,而且原理也就那么几句,怀着一颗向上的心,每天正能量,每天一道a+b,时间长了真的会有很大进步的 因为,时间都看得见 (废话了一波) 题目链接:POJ2823 题意:给定n,k,n个数,求每个连续的以K为区间长度的区间中的最小值和最大值 方法1:线段树!区间内的最大最小

ACdream 391

【单调队列】poj2823_Sliding Window

题目链接 http://poj.org/problem?id=2823 【题解】 这个题目就是纯模板题,但是这个题目有很多坑点,首先这个题目是多组输入的,然后这个输出还卡我们时间 #include<stdio.h> #include<iostream> using namespace std; const int N = 1e6+10; int IM[N],Im[...

Z_sea的博客 263

POJ 2823 Sliding Window (单调队列)

http://poj.org/problem?id=2823 注意G++会TLE。 用pair数组模拟deque即可 完整代码: /*5360ms,19272KB*/ #include #include #include using namespace std; const int mx = 1000005; pair minq[mx], maxq[mx]; /// f

AC,∑ndless 1642
上一篇: ch 1813
下一篇: 关于第二章的习题
FawkesLi
博客等级 码龄8年 21粉丝 170原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值