E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
------单调队列
单调队列
常用二元组表示始终保持队首是区间内的最值查询复杂度O1入队复杂度均摊O1滑动窗口模板题线性dp中的典型应用在从队首取之前确保队首的id是在范围中的在窗口滑动的过程中确保id越合适值越大/小的元素能适时让back的元素出队
tycw
·
2020-08-24 07:10
dp
单调队列
单调队列
~~~~同时食用效果更佳1.
单调队列
可以干嘛?
Eustiana
·
2020-08-23 12:00
NOIP2016-D2-T2 蚯蚓(
单调队列
)
构建三个
单调队列
(用STL),分别储存未切的蚯蚓,切后的第一段,切后的第二段,即可简单证明其单调性。
weixin_30920597
·
2020-08-23 07:40
BZOJ P2091[Poi2010]The Minima Game
简单到爆炸)的题目QAQ我想了半天(10秒)QAQ我码了半天代码(半分钟)QAQ我可能会被膜(被R)QAQ这题自己随便yy一下就可以了显然你取的数字肯定是要在排完序之后连续的嘛然后xjb搞一下就可以了,还想用
单调队列
优化来着其实只用记录一下就可以了呃呃呃呃呃呃鹅鹅鹅鹅鹅鹅饿来啊
萌呆233
·
2020-08-23 06:31
bzoj
蚯蚓_NOIP2016D2T2_
单调队列
Description本题中,我们将用符号[c]表示对c向下取整,例如:[3.0」=[3.1」=[3.9」=3。蛐蛐国最近蚯蚓成灾了!隔壁跳蚤国的跳蚤也拿蚯蚓们没办法,蛐蛐国王只好去请神刀手来帮他们消灭蚯蚓。蛐蛐国里现在共有n只蚯蚓(n为正整数)。每只蚯蚓拥有长度,我们设第i只蚯蚓的长度为a_i(i=1,2,…,n),并保证所有的长度都是非负整数(即:可能存在长度为0的蚯蚓)。每一秒,神刀手会在所
olahiuj
·
2020-08-23 06:01
c++
单调队列
题解 P1016 旅行家的预算
题目传送门(以纪念调了两个半小时的
单调队列
)emmm这题
单调队列
可海星...因为每个点有油量无限的,但是油箱容量是无限的(正好反的一道题SP348EXPEDI-Expedition)所以我们可以用一个价格递减
单调队列
来记录已加过油的加油站若要行驶到一个新的加油站时
diaohan2969
·
2020-08-23 05:30
NOIP模拟 10.17
单调队列
+ 树形Dp + 区间Dp
烟火(fireworks.cpp/c/pas)【题目描述】城镇的主干道上有n个区域,从左到右编号为1到n,每个区域之间相距1个单位距离。在节日中要放m个烟火,第i个烟火会在ti时刻的ai区域放。如果在ti时刻你所处区域为x,那么你可以获得bi-|ai-x|的快乐值。在每个单位时间你可以移动不超过d个单位距离,初始的位置是任意的,求通过移动能获得快乐值和的最大值。【输入格式】第一行三个整数n,m,d
MaxMercer
·
2020-08-23 05:55
NOIP模拟
洛谷 P1886 滑动窗口 /【模板】
单调队列
(
单调队列
、线段树、RMQ(ST表))
题目描述有一个长为nn的序列aa,以及一个大小为kk的窗口。现在这个从左边开始向右滑动,每次滑动一个单位,求出每次滑动后窗口中的最大值和最小值。例如:Thearrayis[1,3,-1,-3,5,3,6,7][1,3,−1,−3,5,3,6,7],andk=3k=3。输入格式输入一共有两行,第一行有两个正整数n,kn,k。第二行nn个整数,表示序列aa输出格式输出共两行,第一行为每次窗口滑动的最小
菱形继承
·
2020-08-23 03:02
#
luogu
单调队列
与DP
算是一个总结吧!先来一个模板;TYVJ1305最大子序和题目描述输入一个长度为n的整数序列,从中找出一段不超过M的连续子序列,使得整个序列的和最大。例如1,-3,5,1,-2,3当m=4时,S=5+1-2+3=7当m=2或m=3时,S=5+1=6输入输出格式输入格式:第一行两个数n,m第二行有n个数,要求在n个数找到最大子序和输出格式:一个数,数出他们的最大子序和输入输出样例输入样例#1:641-
weixin_30667301
·
2020-08-23 03:06
Dividing(多重背包、
单调队列
优化dp)
DividingTimeLimit:2000/1000ms(Java/Other)MemoryLimit:65536/32768K(Java/Other)TotalSubmission(s):0AcceptedSubmission(s):0Font:TimesNewRoman|Verdana|GeorgiaFontSize:←→ProblemDescriptionMarshaandBillowna
w-y-p
·
2020-08-23 03:47
动态规划
合并果子(哈夫曼编码)
显然,用STL里面的
单调队列
做。
蓝
·
2020-08-23 02:01
CF319C Kalila and Dimna in the Logging Industry Solution
这是一道
单调队列
的板题题目链接(Luogu)Codeforces题意伐木工人用电锯伐木,一共需要砍nnn棵树,每棵树的高度为aia_iai,每次砍伐只能砍111单位高度,之后需要对电锯进行充电,费用为当前砍掉的树中最大
smoothset
·
2020-08-23 02:52
c++
poj1014多重背包--
单调队列
优化
但是最好的还是
单调队列
优化.它时怎么实现的呢?还是以pod1014的diving来说吧!在这道题中,可以利用多重背包来进行求解。首先,
单调队列
是两端删除,末尾插入的队列,其队列内部满足了单调性。
South-twilight
·
2020-08-23 02:29
算法
dp
P1404 平均数(二分)
P1404平均数(二分)这是一个很常见的二分题目可能题目正解不是二分是
单调队列
,而这题呢我之前一直被几组数组卡到怀疑人生,01数规划嘛就是让a[i]-mid,然后加起来如果>=0那么就满足条件,然后我就想着长度为
qcccc_
·
2020-08-23 02:53
acm暑训
二分
牛客
【跳棋、跳房子】与
单调队列
【跳棋】题目描述小明迷恋上了一个新的跳棋游戏,游戏规则如下:棋盘是一排从0开始,顺序编号的格子,游戏开始时你位于0号格子,你每次只能往编号大的格子跳,而且你每次至少需要跳过L个格子,至多只能跳过R个格子。每个格子都有一个给定的伤害值,显然你希望得到的伤害值越少越好。你能告诉小明他当他跳到最后一个格子时受到的累积伤害值最小为多少吗?如果无论如何小明都无法跳到最后一个格子,这个时候你需要输出”-1”。
nbtaoyc
·
2020-08-23 02:57
算法
POJ 3261 USACO 2006 December Gold Milk Patterns
这只要
单调队列
扫一次就行了啊..CODE:#include#include#include#include#include#defineMAX1000010usingnamespacestd;in
16bit戦争
·
2020-08-23 01:58
POJ
POJ
字符串
SuffixArray
后缀数组
height
APIO2010 特别行动队
pid=3628特别行动队可以说是斜率优化dp的模板题,50分的方程很容易写出,先推导函数然后用
单调队列
维护上凸壳。
heheyh123
·
2020-08-23 01:24
多重背包问题以及它的二进制及
单调队列
优化问题
多重背包问题,假设有物品a,b,c价格和质量分别为{1,2,3}和{1,3,4}现规定每种物品允许装入的数量为{7,5,3};然后给定背包容量n;求解背包能装下的最大价值为多少?这个问题很像之前的01背包问题,只不过他是限定了我们对物品的数量要求,先看解法1通法怎么解决,很简单就能分析出他的状态转移方程是f(n)=max(f(n),f(n-k*w)+k*v);k为常量,w,v为重量和价值。然后接下
金色周卓
·
2020-08-23 01:09
算法入门
算法
java
数据结构
动态规划
队列
poj2823(
单调队列
)
我们知道,上一种算法有一个地方是重复比较了,就是在找当前的f(i)的时候,i的前面k-1个数其它在算f(i-1)的时候我们就比较过了。那么我们能不能保存上一次的结果呢?当然主要是i的前k-1个数中的最大值了。答案是可以,这就要用到单调递减队列。单调递减队列是这么一个队列,它的头元素一直是队列当中的最大值,而且队列中的值是按照递减的顺序排列的。我们可以从队列的末尾插入一个元素,可以从队列的两端删除元
allia990718
·
2020-08-23 01:23
合并果子【
单调队列
】
【问题描述】在一个果园里,多多已经将所有的果子打了下来,而且按果子的不同种类分成了不同的堆。多多决定把所有的果子合成一堆。每一次合并,多多可以把两堆果子合并到一起,消耗的体力等于两堆果子的重量之和。可以看出,所有的果子经过n-1次合并之后,就只剩下一堆了。多多在合并果子时总共消耗的体力等于每次合并所耗体力之和。因为还要花大力气把这些果子搬回家,所以多多在合并果子时要尽可能地节省体力。假定每个果子重
Job_yi
·
2020-08-23 00:54
单调队列
优化多重背包
我们知道能用
单调队列
优化的DP问题需要满足:dp[i]=max/min(f[k])+g[i](k=i-num,其中c是分组中的任意一个。
oshawott_cute
·
2020-08-23 00:00
dp
洛谷p1052过河
但是l太大了,1e9,但是m和t很小,就是1e9中有很多没有用的空间,我们求终点的值,所以中间废掉的空间可以省略,缩点之后用还能用
单调队列
优化一下。
Tekim
·
2020-08-23 00:22
dp
POJ_1821 Fence
1.题目相关标签:DP
单调队列
优化题目地址:http://poj.org/problem?id=1821题目大意:有N块连续的木板,并有K个工人来粉刷,但不要求全部粉刷。
Zhu8655
·
2020-08-22 16:40
2020牛客暑期多校训练营Fake Maxpooling(二重
单调队列
)
FakeMaxpooling题目描述输入描述:输出描述:示例1输入342输出38说明题目大意给定一个n*m的矩阵A,A(i,j)=lcm(i,j),求所有A中的所有k*k的子矩阵中元素最大值之和。分析首先考虑暴力求,发现复杂度不太对,虽然说有3s的时间,但是还是会TLE。然而A的表是可以暴力先打出来的O(nmlogn),或者用类埃氏筛法的方式O(nm)。//暴力求解for(inti=1;i1,所以
Zc_Ethan
·
2020-08-22 09:36
2020牛客多校
解题报告:Fake Maxpooling(
单调队列
求矩阵的和)
我们不妨先把这个问题中二维的矩阵简化成一维的数列。那么现在的问题就变成了一个求连续的滑动窗口最值问题:给出一个长度为n的数列和一个长度为k(k#include#include#include#include#includeusingnamespacestd;typedeflonglongll;typedefpairPII;constintINF=0x3f3f3f3f;constintN=5e3+7
繁凡さん
·
2020-08-22 04:27
#
单调队列
四连测全题解
因为数据量很大,所以要用到
单调队列
来优化。普通的
单调队列
是单纯地上升或下降..但这次是有区别的。
DD(XYX)
·
2020-08-22 04:57
2020牛客暑期多校训练营(第二场) Fake Maxpooling
前几天刷蓝书的时候看到这种求区间最值的可以用
单调队列
,这个题就是用
单调队列
求解。先横着算一下每个长
只会签到题
·
2020-08-22 04:09
牛客多校2 - Fake Maxpooling(线性递推gcd+
单调队列
)
求所有大小为k*k的子矩阵中的最大值之和题目分析:题目时限给了三秒,可以直接n*m*logn去求出矩阵A,但题解提供了一种可以线性求解gcd的方法,所以可以优化掉一层log,在求出矩阵A后,可以对于每一行,利用
单调队列
维护区间最大值
Frozen_Guardian
·
2020-08-22 03:21
单调栈/单调队列
数论
Fake Maxpooling (二维
单调队列
)
思路:考虑一维求每一行每k个元素的最大值,很容易想到
单调队列
(滑动窗口),可以维护每个长度为k的区间的最大值,但这里是二维的,其实只要在一维的基础上再对列做
单调队列
。
stduy_ing
·
2020-08-22 01:18
单调栈(总结+例题)
与之相对应的是
单调队列
。入栈操作:1,3,2,4,5,8,6,3(单调递增栈)则如果栈为空或入栈元素值小于栈顶元素值,则入栈;否则,如果入栈则会破坏栈的单调性,则需要把比入栈元素小的元素全部出栈。
qdu_zhaiH
·
2020-08-21 21:28
日常刷题
整理
小翟的算法笔记
【C++】
单调队列
& 单调栈
目录介绍双向队列单调性的讨论单调栈例题例题讲解CowLine滑动Windows分析代码最大矩形main积分析代码介绍双向队列先提前介绍一下一个东西:deque话说这个东西和list很像啊,只是少了一个插入insert操作罢了……不过为什么还要创造deque这种东西呢?原因是,list太慢了……转回正题,deque的头文件是#include#includeusingnamespacestd;以上两个
Unknown_XYW
·
2020-08-21 21:36
My
OI
单调队列
和单调栈(通俗易懂)
单调队列
单调队列
顾名思义就是具有单调性的队列,其中单调性可以单调递增也可以单调递减,并且。队首和队尾可以进行出队操作,队尾可以进行入队操作。
翻身的咸鱼ing
·
2020-08-21 21:36
数据结构
单调栈-19王祥力
与之相对应的是
单调队列
。单调栈目的并不在于存储所有入栈元素。对于一个单调递增栈,如果栈为空或入栈元素值小于栈顶元素值,则入栈;否则,如果入栈则会破坏栈的单调性,则需要把比入栈元素小的元素全部出栈。
JSUITDLWXL
·
2020-08-21 18:09
单调栈算法
单调栈分为单调递增栈和单调递减栈,单调递增栈即栈内元素保持单调递增的栈,同理单调递减栈即栈内元素保持单调递减的栈,跟
单调队列
差不多,但是只用到它的一端,利用它可以用来解决一些ACM/ICPC和OI的题目
ryunin
·
2020-08-21 17:55
算法
2015.8.1~8.20训练总结
这几天的新知识点如下:Tarjan(强连通分量)算法树型DP
单调队列
优化DP斜率优化DPTarjan
lyd729
·
2020-08-21 15:53
总结
交大OJ 1069 二哥的硬币(多重背包/
单调队列
)
二哥的硬币Description快放假了,二哥想给女朋友买一个礼物。走到商店前,发现钱包里只有硬币了。二哥数了一下,一共有n种硬币,面值分别为A1,A2,…,An,每种硬币的个数分别为C1,C2,…,Cn。二哥心里没有底,他估计要买的礼物价格不会超过m,但不知道到底要买多少钱的礼物。二哥的硬币已经很多了,他不想再要更多的硬币了,所以他想知道,用手头这些硬币,可以正好凑出1到m中多少种金额(正好相等
BiWendong
·
2020-08-21 08:32
OJ
ACdream群OJ 1074 风之国
单调队列
优化DP
题目连接:http://acdream.info/problem?pid=1074思路:首先,按xi值排序,处理顺序,按排序后的顺序依次给城市编号。记矛盾关系为[u,v](排序后的点),按v值从小到大排序。思考,发现v值一样的矛盾关系,只需取其中最大的u则可。用dp[i]表示:处理了v值为1-i的所有矛盾关系的最小花费。dp[i]的具体怎么转移呢?枚举最后一条删除的边,得到转移方程dp[i]=mi
ACMmaxx
·
2020-08-21 02:03
DP
单调队列
算法笔记
单调队列
算法笔记
单调队列
定义:
单调队列
顾名思义,就是具有单调性质和队列性质的数据结构,它可以从一边维护队列的单调性,也可以从两边维护队列的单调性(双端队列)。
Baymax_yan
·
2020-08-21 01:48
算法笔记
算法--
单调队列
单调队列
文章目录
单调队列
定义:使用方法:核心代码列题1:滑动窗口(acwing154)题目分析:代码:列题2:最大子序和(acwing135)题目分析:代码:定义:
单调队列
就是具有单调性的队列。
呢喃无音
·
2020-08-21 01:27
算法系列
8.13-8.14训练总结
这两点开始告别二分进入
单调队列
的训练,刚开始的时候不知道怎么做,用什么知识,结果怎么做都超时……恩,
单调队列
就是一组单调的队列,可以让我们在查找当前区域的最大值与最小值的时候能够快速的查找,可以用来优化一部分问题
灵与尘
·
2020-08-21 01:38
暑假集训
单调队列
Monotonic Queue
leetcode中有一个找到移动窗口中的最大值,用到了MonotonicQueue,使用deque实现。保存windows中最大值或者较大值即可。
mengmee_pku
·
2020-08-21 00:45
LeetCode算法小技巧
POJ 2823
单调队列
////poj2823(
单调队列
)//给定一个大小已知的数组以及一个大小已知的滑动窗口,窗口每个时刻向后移动一位,求出每个时刻窗口中数字的最大值和最小值。//这个题是
单调队列
的入门题。
hiding_nya
·
2020-08-20 23:43
数据结构
【BZOJ4182】Shopping(点分治,树上多重背包,
单调队列
)
Description马上就是小苗的生日了,为了给小苗准备礼物,小葱兴冲冲地来到了商店街。商店街有n个商店,并且它们之间的道路构成了一颗树的形状。第i个商店只卖第i种物品,小苗对于这种物品的喜爱度是wi,物品的价格为ci,物品的库存是di。但是商店街有一项奇怪的规定:如果在商店u,v买了东西,并且有一个商店w在u到v的路径上,那么必须要在商店w买东西。小葱身上有m元钱,他想要尽量让小苗开心,所以他
Hany01
·
2020-08-20 23:10
BZOJ
DP
点分治
树形DP
背包问题
多重背包
单调队列
基本忘光了所以坑以后再填先把二进制优化的复习掉吧而且常数小也不比
单调队列
慢多少【极不建议作为入门教程使用】多重背包最直接的做法就是暴力拆物品,暴力算01背包但事实上用二进制拆分的方式,数量为sss
bcrQAQ
·
2020-08-20 23:07
学习笔记
做题笔记
随笔
hdu2430Beans(
单调队列
)
看好几篇题解都不知道怎么做!先抄一遍代码再说,好像发现了点问题,构造了一个多小时的数据,再想,再想,懂啦!!!———————————————————————-题意:a[1],a[2],…,a[n]取连续的一段(至少取一个),使得(a[i+1]+a[i+2]+…+a[j])%psum[i]%p:sum[j]%p-sum[i]%psum[j]-sum[i].证毕。所以答案的组合(i,j)一定满足i#i
帐下幕僚
·
2020-08-20 22:02
acm之路
数据结构基础
思路++
单调栈、
单调队列
和并查集
文章目录单调栈步骤代码应用
单调队列
步骤代码应用并查集步骤代码应用单调栈单调栈,故名思意,就是栈内元素具有单调性的栈。可以是单调递增,也可以是单调递减,抑或是单调非增等。
Cross_Entropy
·
2020-08-20 22:43
单调队列
单调队列
是这样一个队列,队列中的所有元素是单调递增或者单调递减。它可以在队首或队尾删除元素,但是只能在队尾插入元素。由于每个元素入队和出队一次,所以维护队列的均摊时间复杂度为O(1)。
ACdreamers
·
2020-08-20 22:44
数据结构
浅析
单调队列
浅析
单调队列
By钟桓9月162014更新日期:9月162014文章目录1.简单的
单调队列
的应用:1.1.1.果子合并问题1.2.Window1.2.1.poj28231.3.广告印刷2.
单调队列
在动态规划中的应用
钟桓
·
2020-08-20 21:30
算法
斜率优化DP--详解
参考资料《算法竞赛–进阶指南》学习斜率优化前请确认你已对
单调队列
有了充分了解下面我们通过这样一道题来逐步引入斜率优化CodeVS2212任务安排N个任务排成一个序列在一台机器上等待完成(顺序不得改变),
niiick
·
2020-08-20 21:56
动态规划--斜率优化DP
单调队列
单调队列
是指:队列中元素之间的关系具有单调性,而且,队首和队尾都可以进行出队操作,只有队尾可以进行入队操作。
庞老板
·
2020-08-20 21:28
数据结构
上一页
9
10
11
12
13
14
15
16
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他