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
leetcode#单调栈
HNOI2018游记
然后对着前两题一脸懵逼,感觉T1是什么神仙题就去淦T2的离线部分然而我离线的策略都想错了,终于想到一个可靠的做法写完之后发现有问题心态崩了.jpg重新想了一下发现可以写成线段树维护
单调栈
那样子
alan_cty
·
2020-07-04 10:20
心情
总结
leetcode-42. 接雨水
https://leetcode-cn.com/problems/trapping-rain-water/
单调栈
应用,详细讲解点我classSolution{public:inttrap(vector&
yyyan_
·
2020-07-04 08:46
力扣leetcode
Subsequence HDU - 3530 (
单调栈
,初学详细解释)
题意:给你n,m,k以及一数组,n个元素,求一个序列使得序列里最大值减去最小值>=m且#includeusingnamespacestd;constintN=1e5+5;inta[N],maxx[N],minn[N],n,m,k;//maxx数组维护单调递减序列,存的是下标,栈底元素最大,minn数组反之intmain(){while(~scanf("%d%d%d",&n,&m,&k)){for(
旺旺_碎_冰冰
·
2020-07-04 07:31
单调栈
hdu
BZOJ 4052: [Cerc2013]Magical GCD
gcd每次至少会下降2,所以不同的gcd值个数最多为log2(10^12),我们枚举连续子序列的终点j,则中间肯定会有很多点对i,i+1,gcd(i,j)=gcd(i+1,j).维护一个
单调栈
,发现这种情况删除即可
MatouKariya
·
2020-07-04 07:18
2019.9.summary
差异后缀自动机好题好像想到这个结论就不难,但是不太好想QAQ把串倒过来建,则两个前缀的最大公共后缀就是pre树上的lca的step因为一个点的pre代表的肯定也是这个点代表的后缀,记住就行了P.S刚看了一眼SA+
单调栈
的写法
LMB_001
·
2020-07-04 06:18
刷题总结
【递归】 LeetCode #面试题64 求1+2+...+n (巧用逻辑运算符“&&”、“||”设置递归的出口)
题目链接:
LeetCode#
面试题64求1+2+…+n题目描述:#面试题64.求1+2+…+n求1+2+…+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句
Code_Yilia
·
2020-07-04 05:16
LeetCode
剑指Offer
[BZOJ2086][Poi2010]Blocks(
单调栈
)
题目描述传送门题解题意实际上是要求平均值>=k的最长区间。这种区间平均值的题有一种特别的技巧,即如果平均值为k,那么将每一个数减去k,然后求前缀和。如果一段区间满足sr−sl>=0,那么它的平均值即是>=k的。那么对于每一个k做这样的处理,问题就转化为了求满足sr−sl>=0的最长区间[l,r]。可以发现如果i#include#includeusingnamespacestd;#defineN10
Clove_unique
·
2020-07-04 05:13
题解
单调栈
BZOJ4523(Cqoi2016)[路由表]--Trie+
单调栈
【链接】bzoj4523Ps:博主吐槽一下bzoj竟然给了1000行的数据我也是醉了,后来搜原题才发现只有11行。我有一句mmp不知当讲不当讲【题目大意】有M个操作,分别有两种不同的操作,对于操作A(插入)给定一个IP地址(由4个数字构成)核对掩码长度x,然后将这4个转化为2进制01串,并从左到右取x位。对于操作Q(查询)也给定一个IP地址(由4个数字构成)以及区间[L,R],询问第L次的插入操作
Greninja_Wu
·
2020-07-04 04:48
BZOJ题解
Trie-字典树
单调栈和单调序列
BZOJ题解
By
Greninja
部分常见刷题网站的题解
By
Greninja
4月末开坑,4.29-?
4.29(-84)bzoj3572世界树,感觉自己从来没有好好写过虚树,不懂
单调栈
那套理论,在bx2k的启发下知道了一个好写好懂的写法(就是常数大),先对要处理点的dfs序进行排序,然后两两求lca,再对所有数进行排序
weixin_30521649
·
2020-07-04 02:01
BZOJ 4540 Hnoi2016 序列 ST表+
单调栈
4540:[Hnoi2016]序列TimeLimit:20SecMemoryLimit:512MBDescription给定长度为n的序列:a1,a2,…,an,记为a[1:n]。类似地,a[l:r](1≤l≤r≤N)是指序列:al,al+1,…,ar-1,ar。若1≤l≤s≤t≤r≤n,则称a[s:t]是a[l:r]的子序列。现在有q个询问,每个询问给定两个数l和r,1≤l≤r≤n,求a[l:r
rgnoH
·
2020-07-04 01:52
省选
栈与队列
保序回归问题在序列上的特殊做法
所以就可以
单调栈
维护区间的LpL_pLp均值,如果前面的均值比后面大则合并区间。最后
单调栈
中的区间的LpL_pLp均值就是一个可行方案。
Freopen
·
2020-07-04 01:19
【BZOJ4052】【Cerc2013】Magical GCD
单调栈
首先不难想出N*N的做法(假装GCD是常数):穷举右端点再枚举左端点,然后我们发现如果固定右端点,那么左端点从右往左扫的时候,GCD单调不增,因此可以用
单调栈
来维护,对于每一个GCD,只记录一个最远的左端点
RicardoWWW
·
2020-07-04 01:03
单调栈
LeetCode 907. 子数组的最小值之和
1.题目描述LeetCode2.解题方法典型的
单调栈
使用,使用一个单调递增的栈来保存,栈中存放的是该元素之前包括该元素大于等于该元素的个数,使用一个total来表示以当前元素结尾的连续子数组的和。
__WorldBeautiful
·
2020-07-02 22:57
LeetCode
LeetCode#
面试题 04.08. 首个共同祖先 (Python解法)
问题描述:设计并实现一个算法,找出二叉树中某两个节点的第一个共同祖先。不得将其他的节点存储在另外的数据结构中。注意:这不一定是二叉搜索树。例如,给定如下二叉树:root=[3,5,1,6,2,0,8,null,null,7,4]3/\51/\/\6208/\74示例1:输入:root=[3,5,1,6,2,0,8,null,null,7,4],p=5,q=1输入:3解释:节点5和节点1的最近公共祖
张某某。paranoia
·
2020-07-02 14:38
LeetCode刷题
单调栈
算法(leetcode 1124 表现良好的最长时间段)
【
单调栈
的定义】满足单调性的栈结构【图例】【leetcode1124表现良好的最长时间段】【题目】给你一份工作时间表hours,上面记录着某一位员工每天的工作小时数。
kuangd_1992
·
2020-07-02 07:47
单调栈
ICPC NEAU Programming Contest 2020 D 旅游(
单调栈
+倍增)
链接:D旅游思路:
单调栈
处理出每个点右边第一个大于它的点,然后倍增跳yi次,和倍增lca类似从一个点一个点跳变成倍增跳(全用下标处理)。
stduy_ing
·
2020-07-02 02:33
「GXOI / GZOI2019」与或和_
单调栈
_拆位
#3083.「GXOI/GZOI2019」与或和题目大意给定一个\(N\timesN\)的矩阵,求所有子矩阵的\(AND(\&)\)之和、\(OR(|)\)之和。数据范围\(1\leN\le10^3\),\(val_{(i,j)}\le2^{31}-1\)。题解一眼题。对于这种位运算的题,题都不用看完先想拆位,拆位可行那就拆,拆位不可行就不拆。这里指的拆位可不可行具体指的是答案满不满足对于拆位之后
dianan0938
·
2020-07-01 22:19
【矩阵】求01矩阵中,只含1的子矩阵的个数
:参考资料有一个显然的结论:以(n,m)为右下角的所有子矩阵之和=n*m枚举每一个点,我们来计算以它为右下角的子矩阵个数对于一般情况,在2处,A区域就没有意义,4处,B区域就没有意义所以我们要维护一个
单调栈
Z_sea
·
2020-07-01 15:51
矩阵
[LeetCode每日1题][困难] 42. 接雨水
文章目录题目基本解法动态规划
单调栈
双指针参考题目42.接雨水-力扣(LeetCode)基本解法每个柱子能装的水量取决于它左右两侧柱子高度的最大值的较小者。对每个柱子进行向左向右遍历找最大值即可。
EvergIow
·
2020-07-01 09:12
前几天挂掉一个读者的字节二面题目
这道在各大厂面试超高频的
单调栈
,朋友竟然没写出来……也因此错失了字节动不动50万的年薪。我不禁为这位朋友感动惋惜。因为这道题我在九章算法的《九章算法班》中看到过。
程序员吴师兄
·
2020-07-01 00:05
【UOJ#284】快乐游戏鸡(长链剖分)(
单调栈
)
传送门我TM就随手一写。UOJ速度榜rk4的同时,加上读优之后UOJ码长榜第二,把fread优化去掉后就成码长榜第一了???某种意义上从侧面证明了这个做法的优越性题解:考虑什么时候能够从sss走到ttt,当且仅当死亡次数已经达到了路径上的www最大值,这个可以倍增求一下。也就是说在死亡次数达到maxw\maxwmaxw之前,我们只能一直死,那么显然我们希望能够早死早超生。维护一个子树内部按照深度
zxyoi_dreamer
·
2020-06-30 20:03
树链剖分
倍增
[HDU 5696] 区间的价值 (
单调栈
+RMQ)
链接HDU5696题意给出一个长度为n(1#include#include#include#includeusingnamespacestd;typedeflonglonglint;#definemaxn(100010)#defineleftlleft#definerightrright#definelog2Log2inta[maxn],left[maxn],right[maxn];lintans
flinkstar
·
2020-06-30 17:56
单调栈
的总结
看到别人的总结:
单调栈
解决的是以某个值为最小(最大)值的最大区间。
云之飞踢
·
2020-06-30 10:12
[LOJ#3177][IOI2019]矩形区域(分治 +
单调栈
)
gt;ai,ar+1>aia_{l-1}>a_i,a_{r+1}>a_ial−1>ai,ar+1>ai的二元组(l,r)(l,r)(l,r)只有O(n)O(n)O(n)个证明可以使用
单调栈
把这个
xyz32768
·
2020-06-30 04:32
BZOJ
UOJ
LOJ
单调栈
总结 来自poj
单调栈
不用再多介绍,我这里是自己写的实现,可能没有很大得优化,但也懒得去看别人怎么优化了~到现在做的题都是大同小异,把代码改改就能迅速的过。
单调栈
能解决的问题——求一个以某个值为最小值的区间!
xxx_bug
·
2020-06-30 04:52
单调栈与单调队列
leetcode
单调栈
总结
单调栈
是在栈的先进后出基础之上额外添加一个特性:从栈顶到栈底的元素是严格递增(or递减)。动画:什么是
单调栈
?一文很直观的解释了
单调栈
并给出了单调递减栈的一个例子,但是上文中误写为单调递增栈。
wonner_
·
2020-06-29 20:16
leetcode
接雨水(
单调栈
)
42.接雨水给定n个非负整数表示每个宽度为1的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。上面是由数组[0,1,0,2,1,0,1,3,2,1,2,1]表示的高度图,在这种情况下,可以接6个单位的雨水(蓝色部分表示雨水)。感谢Marcos贡献此图。示例:输入:[0,1,0,2,1,0,1,3,2,1,2,1]输出:6解题思路:试想一下,若我们手动解此题会如何解?我们可能会遍历数组,然后
virgilshi
·
2020-06-29 18:44
栈
leetcode
POJ - 2796(
单调栈
)
2019GDUTWinterTrainingV(算法优化)C-FeelGoodpoj传送门专题传送门题目大意:给出一组数字,求一区间,使得区间元素和乘以区间最小值最大,结果要求给出这个最大值和区间的左右端点。题目分析:用一个单调递减栈,如果栈为空或入栈元素大于等于栈顶元素,则入栈,否则将破坏栈的单调性,则将栈顶元素出栈,直到栈为空或碰到第一个大于等于入栈元素的元素。然后将最后一次出栈的栈顶元素入栈
AcidCitric
·
2020-06-29 08:39
GDUT专题
单调栈
详解
定义:
单调栈
,顾名思义就是栈内元素单调按照递增(递减)顺序排列的栈。适用问题:要知道
单调栈
的适用于解决什么样的问题,我们首先需要知道
单调栈
的作用。
天天~
·
2020-06-29 06:27
算法
刷题关键点总结-
单调栈
、单调队列
单调栈
,单调队列顾名思义,栈内或者队列内元素具有一致下降或者一致上升的特点。
weixin_34354173
·
2020-06-28 17:20
hdu 3415 Max Sum of Max-K-sub-sequence
做dp遇到了单调队列优化的问题,所以便又跑来学这东西来了,单调队列,
单调栈
。最近一直在被老师,被同学糗,吼吼。
weixin_34198583
·
2020-06-28 13:35
一句话题解(20170801~20170125)
三次函数期望值从一次、二次推得8.2bzoj1076状压+期望DP逆拓扑序(贪心常用手段防止现在过度影响未来)lim边界问题曾WA多次bzoj1012树状数组(线段树)第二暴力更新后缀第一(明显可卡)暴力查询要TLE
单调栈
没调出来
weixin_30839881
·
2020-06-28 01:29
0x10基本数据结构
0x11栈栈是一种后进先出的线性数据结构AcWing41.包含min函数的栈维护两个栈,一个记录栈的值,另一个
单调栈
,记录下当前的最小值即可codingAcWing128.编辑器开两个栈维护,类似对顶堆的操作
weixin_30271335
·
2020-06-27 15:32
单调栈
单调栈
的定义:元素顺序始终保持单调性(递增、递减)的栈。(递增
单调栈
和递减
单调栈
的区别仅限于单调顺序不同,故以下为了方便讲解,默认提到的
单调栈
都为严格递增
单调栈
。)
HarryHuang
·
2020-06-27 11:00
lc1087+
单调栈
经典题
https://leetcode.com/problems/next-greater-node-in-linked-list/structListNode{intval;ListNode*next;ListNode(intx):val(x),next(NULL){}};classSolution{public:vectornextLargerNodes(ListNode*head){vectorr
小堃哥
·
2020-06-27 07:16
进阶LC
Daily Temperatures &&
单调栈
&& Python collections deque
739.DailyTemperatures&&
单调栈
&&Pythoncollectionsdeque题目大意给你接下来每一天的气温,求出对于每一天的气温,下一次出现比它高气温的日期距现在要等多少天解题思路利用
单调栈
swallowblank
·
2020-06-26 16:15
ACM解题技巧---(
单调栈
)+ 题目总结
单调是一种思想,当我们解决问题的时候发现有许多冗杂无用的状态时,我们可以采用单调思想,用
单调栈
或类似于单调队列的方法去除冗杂状态,保存我们想要的状态第一题题目传送门Hdu1506poj2559最大矩形面积思路
DayDay_Lee
·
2020-06-26 01:52
Acm算法
2020 年 “联想杯”全国高校程序设计在线邀请赛暨第三届上海理工大学程序设计竞赛(A 签到,B签到,C签到,D思维+MST,G
单调栈
,H暴力,L思维暴力)
题目链接官方视频讲解A.Archmage签到题#include#definerep(i,a,b)for(inti=a;i=(b);--i)#definemem(a,x)memset(a,x,sizeof(a))#definepbpush_back#definepipair#definemkmake_pairusingnamespacestd;typedeflonglongll;llgcd(lla,
ccsu_deer
·
2020-06-25 20:48
EOJ
题解
LeetCode 739. 每日温度
思路:
单调栈
从前往后,维护一个单调下降的栈。当入栈元素大于栈顶元素时,说明栈顶元素已经找到下一个大于它的数了。
untilyouydc
·
2020-06-25 18:30
LeetCode
Largest Rectangle in Histogram(
单调栈
)
题目链接Givennnon-negativeintegersrepresentingthehistogram’sbarheightwherethewidthofeachbaris1,findtheareaoflargestrectangleinthehistogram.Aboveisahistogramwherewidthofeachbaris1,givenheight=[2,1,5,6,2,3]
SlienceAccept
·
2020-06-25 13:45
栈
LeetCode42. 接雨水
题目链接:LeetCode42有人说用贪心,我觉得这是一个
单调栈
的板子题,构建一个单调递减栈(栈底到栈顶是递减的),要想能够收集雨水,栈中至少要两个数字,才能形成一个坑,先pop一个数字,这个数字就是最低值
数学家是我理想
·
2020-06-25 12:22
LeetCode
LeetCode 239 Hard 滑动窗口内最大值 Python
defmaxSlidingWindow(self,nums,k):"""DisscussionMethod算法:单调双向队列思路:和
单调栈
类似,
单调栈
是栈内元素保持某种单调性,单调双向队列是队列内保持某种单调性
咚咚咚Boom
·
2020-06-25 03:36
OJ
算法
LeetCode
leetcode: 每日温度(
单调栈
)
类似于:柱状图中最大的矩形(
单调栈
*)请根据每日气温列表,重新生成一个列表。对应位置的输出为:要想观测到更高的气温,至少需要等待的天数。如果气温在这之后都不会升高,请在该位置用0来代替。
catEyesL
·
2020-06-24 23:36
python
POJ2559Largest Rectangle in a Histogram(
单调栈
)
所以用
单调栈
求每个元素左边第一个小于它和右边第一个小于它的元素。多组数据,别忘更新ans。。。#include#include#include#include#inc
查又恩
·
2020-06-24 20:00
【搞定算法】
单调栈
问题:直方图中的最大矩形面积、求最大子矩阵的大小、可见山峰问题
目录:1、
单调栈
结构1.1、
单调栈
结构的实现:无重复元素1.2、
单调栈
结构的实现:有重复元素2、
单调栈
结构的应用2.1、直方图中的最大矩形面积2.2、求最大子矩阵的大小2.3、可见山峰问题本文主要用于讲解一种在面试笔试中经常使用到的一种算法结构
pcwl1206
·
2020-06-24 19:34
左神算法
手撕代码
数据结构与算法
2019牛客暑期多校训练营(第一场)A Equivalent Prefixes
单调栈
题目链接:https://ac.nowcoder.com/acm/contest/881/A题意:求最大的p,满足[1,p]任何区间的最小值的下标都相等题解:假设前面的都符合了,在判断到第i个时,判断前面第一个比a[i],b[i]小的位置k1,k2是否相同,因为在这个范围内,是a[i]和b[i]小,k1k2往前就是已经符合好的了#includeusingnamespacestd;constintN
mmk27
·
2020-06-24 15:43
单调栈/队列
【LeetCode】Sama的个人记录_19
例如,给定一个列表temperatures=[73,74,75,71,69,72,76,73],你的输出应该是[1,1,4,2,1,1,0,0]classSolution{/**【
单调栈
】**解决这类问题
loli saikou
·
2020-06-24 12:20
Leetcode
[数据结构]——
单调栈
单调栈
笔者在做leetcode的题(下一个出现的最大数字)时,接触到了
单调栈
这一种数据结构,经过研究之后,发现
单调栈
在解决某些问题时出奇的好用,下面是对
单调栈
的性质和一些典型题目。
lucky52529
·
2020-06-24 09:14
数据结构
单调栈
题目描述给定一个长度为N的整数数列,输出每个数左边第一个比它小的数,如果不存在则输出-1。输入格式第一行包含整数N,表示数列长度。第二行包含N个整数,表示整数数列。输出格式共一行,包含N个整数,其中第i个数表示第i个数的左边第一个比它小的数,如果不存在则输出-1。数据范围1≤N≤1051≤数列中元素≤109输入样例:534275输出样例:-13-122解题思路传统双指针for(inti=0;i=0
阳光丿洒脱
·
2020-06-24 07:33
算法
NOI2019 复习
利用面积比算长度比nodedot(linex,liney){returny.p+(crs(x.v,x.p-y.p)/crs(x.v,y.v))*y.v;}(1)凸包,闵可夫斯基和选出最左下的点,极角排序后
单调栈
维护
BAJim_H
·
2020-06-23 17:04
计划
上一页
39
40
41
42
43
44
45
46
下一页
按字母分类:
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
其他