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#单调栈
Codeforces 319B 题解
所以我只需要找出所有数字被消去轮数的最大值即可,这个要求可以用一个
单调栈
来完成。
Erag0n
·
2020-08-25 03:16
Codeforces
冲冲冲
滴水日记太难了…蒟蒻流泪日记dfs,bfsdp,状态压缩dp二分,三分贪心线段树:rmq树状数组图:最小生成树,最短路数论:埃氏筛,中国剩余定理,gdc,快速幂
单调栈
https://www.cnblogs.com
lingdie.
·
2020-08-25 03:04
学习
gcd
【洛谷3467/BZOJ1113】[POI2008]海报PLA-Postering(
单调栈
)
本文Markdown版见http://www.cnblogs.com/zyt1253679098/p/8876811.html题目:洛谷3467分析:(tijieshuo)这题是个
单调栈
经典题。
Inspector_Javert
·
2020-08-25 03:27
数据结构
接雨水【
单调栈
】
方法一:遍历每一列,然后求该列两边的最高的柱子高度,那么该列能存放的雨水量为两边柱子高度较低的一个柱子和当前列的高度差。可以使用动态规划来优化求某一列的两边最高的柱子高度的过程,使用dp数组来保存,可以避免每次都重新遍历整个数组。classSolution{publicinttrap(int[]height){intsum=0;int[]max_left=newint[height.length]
BaldBear
·
2020-08-25 03:39
刷题路漫漫
【LeetCode】每日一题(二)柱状图中最大的矩形
单调栈
+哨兵技巧
84.柱状图中最大的矩形20200530难度:困难题目描述给定n个非负整数,用来表示柱状图中各个柱子的高度。每个柱子彼此相邻,且宽度为1。求在该柱状图中,能够勾勒出来的矩形的最大面积。以上是柱状图的示例,其中每个柱子的宽度为1,给定的高度为[2,1,5,6,2,3]。图中阴影部分为所能勾勒出的最大矩形面积,其面积为10个单位。示例:输入:[2,1,5,6,2,3]输出:10Solution思路一暴
_Evelyn_
·
2020-08-25 03:06
数据结构与算法
LeetCode
二模 (13)day1
N<=1000000解题过程:1.前几天做poj的时候刚好在discuss里看到有一个神奇的东东叫
单调栈
,正好派上用场。。。虽然本题2s的时限RMQ+二分应该也不会超时,但是容易写错。
dehs8915
·
2020-08-25 03:13
(
单调栈
)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来源:力扣(LeetCode)链接:https://leetcode-cn.com
black_horse2018-Dong
·
2020-08-25 02:29
单调栈
leetcode
[POI 2008&洛谷P3467]PLA-Postering 题解(
单调栈
)
[POI2008&洛谷P3467]PLA-PosteringDescriptionByteburg市东边的建筑都是以旧结构形式建造的:建筑互相紧挨着,之间没有空间.它们共同形成了一条长长的,从东向西延伸的建筑物链(建筑物的高度不一).Byteburg市的市长Byteasar,决定将这个建筑物链的一侧用海报覆盖住.并且想用最少的海报数量,海报是矩形的.海报与海报之间不能重叠,但是可以相互挨着(即它们
aua4137
·
2020-08-25 02:10
每个数左边第一个比它小/大的数(
单调栈
)
给定一个长度为N的整数数列,输出每个数左边第一个比它小的数,如果不存在则输出-1。输入格式第一行包含整数N,表示数列长度。第二行包含N个整数,表示整数数列。输出格式共一行,包含N个整数,其中第i个数表示第i个数的左边第一个比它小的数,如果不存在则输出-1。数据范围1≤N≤1051≤N≤1051≤数列中元素≤1091≤数列中元素≤109输入样例:534275输出样例:-13-122解题思路:利用栈的
alex1997222
·
2020-08-25 02:00
leetcode刷题
数组中每个位置右边第一个比它大的数
-1样例输入:8,2,5,4,3,9,7,2,5样例输出:9,5,9,9,9,-1,-1,5,-1 题目的终点当然是O(1)时间,也就是遍历一次就应该能够输出,那一定是需要辅助空间的了,这里用到的是
单调栈
Bob__yuan
·
2020-08-25 02:39
#
编程题
接雨水
单调栈
dp
https://leetcode-cn.com/problems/trapping-rain-water/思路一:维护一个单调非升的栈,栈中存储的是数组的下标,那么如果height[i]>height[s.top()]height[i]>height[s.top()]height[i]>height[s.top()],此时要判断一下栈中的元素是不是>=2>=2>=2的,因为iii作为右边界,s.t
csu_xiji
·
2020-08-25 02:47
单调栈
dp
动态规划
接雨水(
单调栈
)
单调栈
这题是典型的
单调栈
解法,我们维护一个单调递减栈,当发现height[i]大于栈顶元素时,说明有可能形成水坑,这个水坑的高度等于左右柱子中较低的柱子与水坑底部的高度差。
virgilshi
·
2020-08-25 02:14
leetcode
5.23力扣 最大子数组和 前缀和+
单调栈
面试题16.16.部分排序当一个数a[i]左侧有一个数比它大的时候,或者右侧有一个数比它小的时候,它一定是在被排序的序列内。因为一个数如果左边的数都比它小,右边的数都比它大,显然没必要排序。那么对于元素a[i]来说,如果它左边存在大于a[i]的元素,那么a[i]是一定要参与到排序里去的。或者说如果它右边存在小于a[i]的元素,那么a[i]也是要参与到排序里去的。所以我们只需要寻找最靠右的那个数(满
咩桃
·
2020-08-25 02:57
力扣
接雨水(使用
单调栈
处理)
示例:输入:[0,1,0,2,1,0,1,3,2,1,2,1]输出:6思路1.使用
单调栈
,加入元素好要保持单调。必须再入栈前将栈顶小于入栈元素的元
吉诺比利20
·
2020-08-25 02:27
算法练习总结
Leetcode-
单调栈
单调栈
适用于当你需要高效率的查询某个位置左右两侧比他大或小的数的位置1.买卖股票的最佳时间:维护
单调栈
的思路:在pricespricesprices数组的末尾加上一个哨兵✈️(也就是一个很小的元素,这里设为
qiaoqiaomumu
·
2020-08-25 02:54
Leetcode
接雨水(
单调栈
)
42.接雨水给定n个非负整数表示每个宽度为1的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。示例:输入:[0,1,0,2,1,0,1,3,2,1,2,1]输出:6法一找出每根柱子左右的最高点,取两边最高柱子最小的高度,与中间柱子高度相减就是凹槽的高度classSolution{public:inttrap(vector&height){intn=height.size();vectorl
ガッシュ·ベル
·
2020-08-25 02:39
leetcode
Leetcode刷题看到的一些概念——
单调栈
输出想要观测到更高温度至少要等待的天数,如果不存在更高的天数,该位置取0例如:temperatyres=[73,74,75,71,69,72,76,73]输出=[1,1,4,2,1,1,0,0]维护一个存储下标的
单调栈
七七不是七七七七
·
2020-08-25 02:02
C++刷题
算法-
单调栈
问题合集
算法-
单调栈
问题合集1、移掉K位数字,使剩下的数字保持最小2、移掉K位数字,使剩下的数字保持最大3、去除重复字母,使字典序最小
单调栈
顾名思义是一种单调递增或者单调递减的栈,虽然很简单,但是的确是一种高级数据结构
亦泽同学
·
2020-08-25 01:23
数据结构与算法分析
单调栈
的应用
可以解决求数组元素左边第一个大于其的元素接雨水leetcode42给定n个非负整数表示每个宽度为1的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。上面是由数组[0,1,0,2,1,0,1,3,2,1,2,1]表示的高度图,在这种情况下,可以接6个单位的雨水(蓝色部分表示雨水)来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/trappi
InAHurryv
·
2020-08-25 01:44
算法
商品折扣后的最终价格(
单调栈
)
【题目】1475.商品折扣后的最终价格给你一个数组prices,其中prices[i]是商店里第i件商品的价格。商店里正在进行促销活动,如果你要买第i件商品,那么你可以得到与prices[j]相等的折扣,其中j是满足j>i且prices[j]stack=newStack<>();//维护一个单调递增的栈for(inti=0;i
Sophia_fez
·
2020-08-25 01:44
Leetcode
#
栈
单调栈
复习--最大01子矩阵 01矩阵统计全1矩阵数量
最大01子矩阵例题:POJ3494代码实现有些许复杂#include#includeusingnamespacestd;constintN=2e3+10;intn,m,a[N][N],h[N][N],l[N][N],r[N][N];intmain(){while(~scanf("%d%d",&n,&m)){for(inti=1;ista;sta.push(0);h[i][0]=-1;for(int
ccsu_deer
·
2020-08-25 01:46
数据结构--单调栈&单调队列
小阳买水果(前缀和,
单调栈
,思维)
链接:https://ac.nowcoder.com/acm/contest/949/D来源:牛客网水果店里有nnn个水果排成一列。店长要求顾客只能买一段连续的水果。小阳对每个水果都有一个喜爱程度aia_iai,最终的满意度为他买到的水果的喜欢程度之和。如果和为正(不管是正多少,只要大于0即可),他就满意了。小阳想知道在他满意的条件下最多能买多少个水果。你能帮帮他吗?输入描述:第一行输入一个正整数
tb_youth
·
2020-08-24 23:40
思维题
BZOJ3039 最大01子矩阵
单调栈
//#include#include#include#include#include#include#include#include#include#include#includeusingnamespacestd;#definelllonglong#defineullunsignedlonglong#definepbpush_back#definemem(a)memset(a,0,sizeofa
Drenight
·
2020-08-24 22:08
单调栈
NOIP 2017 考点总结及复习规划
一、数据结构初级数据结构1.链表,双向链表2.队列,单调队列,双端队列,栈,
单调栈
3.堆基础数据结构1.并查集与带权并查集2.hash表3.树状数组,线段树,线段树合并*4.主席树**5.平衡树*6.左偏树
onepointo
·
2020-08-24 22:59
noip
2020 leetcode 刷题记录
刷题杂题链表位运算双指针
单调栈
二叉树字符串动态规划二分杂题二叉树的三种迭代遍历:code十种排序leetcode347.前K个高频元素巧妙使用快排的思想leetcode399.除法求值带权并查集leetcode621
NOTRp
·
2020-08-24 08:50
刷题
牛客算法周周练15 解题报告(ABD)
牛客算法周周练15A-数列下标(
单调栈
)牛客算法周周练15B-可持久化动态图上树状数组维护01背包(贪心)牛客算法周周练15D-树上求和(DFS序+线段树维护平方和)比赛AC了两题,然后A题跑暴力侥幸过了
_Hayasaka
·
2020-08-24 07:30
赛后报告
【Gym 102059A】Coloring Roads(树链剖分+
单调栈
)
https://codeforc.es/gym/102059/problem/A题意给出一棵树。询问u,c,m:将结点u到根节点路径上的边都染色成c,询问染色边数为m的颜色有多少种。题解每次都是从一个结点到根,所以可以对这颗树进行树链剖分(heavy-lightdecompose)维护has[col]代表颜色col有多少条边。cnt[m]边数为m的颜色有多少个。dfn[v]:结点v的dfs编号。对
Link_Ray
·
2020-08-24 07:35
树链剖分
单调栈
2020杭电多校第一场(解题报告)
输入:13112332输出:2hint:
单调栈
的做法。先将所有小车按照加速度从小到大的顺序排列,加速度相同时按照初始位置从小到大排列。如此以来,后面的车都能超越前面的车。所以维护一个栈,(栈中:栈顶。
chasing__wind
·
2020-08-24 07:23
单调栈
杭电多校
憨批min栈
Abstract讨论了min栈变形题,获取栈中第二小的数,的思路Min栈常规思路双栈stackA,stackB变形题求第二小的数case1第一小和第二小可以重复本质上还是
单调栈
,push时,针对min栈
一大碗恩希玛
·
2020-08-24 06:54
数据结构与算法
单调栈
经典模板(Codeforces Round #305 (Div. 2), problem: (D) Mike and Feet)
#includeusingnamespacestd;constintmaxn=200000+10;stackstk;inta[maxn],dpl[maxn],dpr[maxn],ans[maxn];intmain(){intn;scanf("%d",&n);for(inti=1;i=a[i])stk.pop();if(stk.empty())dpl[i]=1;elsedpl[i]=stk.top(
j_d_m_y
·
2020-08-24 00:51
51Nod - 1249 近似有序区间 (
单调栈
+树状数组+偏序)(好题)
题目链接极大极小子段,就是一个序列,它的最小值在最前面,它的最大值在最后面。现在给你一个由1~n的一个排列构成的数组S,求它有多少个这样的子段例如:S={3,1,2,5,4},S的所有极大极小子段为:{3},{1},{1,2},{1,2,5},{2},{2,5},{5},{4}Input第一行:一个数N,表示S的长度。(1=j&&i>=j,其中b【i】代表第i个数字作为最大值的最左的端点,d【i】
qq_42479630
·
2020-08-23 18:11
树状数组
739.每日温度 python3
采用
单调栈
,
单调栈
就是可以求左边或者右边,最大或者最小的第一个数。
xfdelovely
·
2020-08-23 18:51
leetcode
题目
2019暑期训练
牛客多校:ABCDEFGHIJ第一场题解笛卡尔树(不会)/
单调栈
数学推公式暴力DP数学推公式线性基线段树+动态规划水题通过情况√√√√√√待补√第二场爆搜
单调栈
通过情况√√第三场通过情况第四场通过情况第五场题解签到快速幂简单
weixin_30622181
·
2020-08-23 07:45
#
单调栈
#poj 2559 洛谷 SP1805 Largest Rectangle in a Histogram
分析这道题目可以用
单调栈
的,维护一个单调递增的栈,从左到右枚举每一个矩形,如果当前矩形比栈顶高,直接入队,否则不断取出栈顶,直到栈为空或当前矩形比栈顶高,在出栈时,不断累计矩形的宽度,累计答案,并把最后的矩形入栈
ssl_xjq_逐风之刃
·
2020-08-23 07:43
栈
队列
链表
单调栈
解决木板倒水问题
题目:地上从左到右竖立着n块木板,从1到n依次编号,如下图所示。我们知道每块木板的高度,在第n块木板右侧竖立着一块高度无限大的木板,现对每块木板依次做如下的操作:对于第i块木板,我们从其右侧开始倒水,直到水的高度等于第i块木板的高度,倒入的水会淹没ai块木板(如果木板左右两侧水的高度大于等于木板高度即视为木板被淹没)。求n次操作后,所有ai的和是多少。如图所示,在第4块木板右侧倒水,可以淹没第5块
延春
·
2020-08-23 06:16
计蒜客
单调栈
数据结构
单调栈
解木板倒水问题(
单调栈
的简单应用)
题目描述:地上从左到右竖立着n块木板,从1到n依次编号,如下图所示。我们知道每块木板的高度,在第n块木板右侧竖立着一块高度无限大的木板,现对每块木板依次做如下的操作:对于第i块木板,我们从其右侧开始倒水,直到水的高度等于第i块木板的高度,倒入的水会淹没ai块木板(如果木板左右两侧水的高度大于等于木板高度即视为木板被淹没),求n次操作后,所有ai的和是多少。如图上所示,在第4块木板右侧倒水,可以淹没
Adherer
·
2020-08-23 06:20
数据结构——栈
单调栈
解木板倒水问题
题目描述:地上从左到右竖立着n块木板,从1到n依次编号,如下图所示。我们知道每块木板的高度,在第n块木板右侧竖立着一块高度无限大的木板,现对每块木板依次做如下的操作:对于第i块木板,我们从其右侧开始倒水,直到水的高度等于第i块木板的高度,倒入的水会淹没ai块木板(如果木板左右两侧水的高度大于等于木板高度即视为木板被淹没),求n次操作后,所有ai的和是多少。如图上所示,在第4块木板右侧倒水,可以淹没
dongchuan5097
·
2020-08-23 05:06
2018.07.17【2018提高组】模拟C组
题目JZOJ1264乱头发节题目求一头牛到后面第一头不低于该牛身高的牛之间的牛的数量(不包括两头牛,如果没有不低于的,就当做最后有一头无限高的牛)分析
单调栈
!
ssl_xjq_逐风之刃
·
2020-08-23 02:55
模拟赛
单调队列
斜率优化
状压dp
数位dp
最短路径
KEKS--------
单调栈
KEKS题目描述Mirko和Slavko再一次厌倦了数学课,所以他们发明了一个新游戏。Mirko写下N个数字组成的一个数,Slavko的任务是算出除去K个数字后的最大值。输入第一行两个整数N和K。(1≤K≤N≤500000)接下来的一行有一个长度为N的数。输出一行,即题目所求最大值。样例输入421924样例输出94提示Input731231234Output3234Input10441772528
nbtaoyc
·
2020-08-23 02:57
算法
【leetcode】84.柱状图中最大的矩形 (多种解法,java实现,
单调栈
)
84.柱状图中最大的矩形难度困难给定n个非负整数,用来表示柱状图中各个柱子的高度。每个柱子彼此相邻,且宽度为1。求在该柱状图中,能够勾勒出来的矩形的最大面积。以上是柱状图的示例,其中每个柱子的宽度为1,给定的高度为[2,1,5,6,2,3]。图中阴影部分为所能勾勒出的最大矩形面积,其面积为10个单位。示例:输入:[2,1,5,6,2,3]输出:10方法一:暴力解法这道问题的暴力解法比「接雨水」那道
Hi丶Vp
·
2020-08-22 20:52
LeetCode
算法
数据结构
leetcode
java
单调栈
9.3 贝壳笔试编程题
多米诺骨牌题目衔接大家参考一下
单调栈
的解法即可,还有一种是直接更新的也很快//
单调栈
#include#include#include#include#include#include#include#include
Yokile_
·
2020-08-22 13:01
计算机基础
带有优先级的计算器的优先级设置与实现(Java语言)
加减乘除以及左括号优先级设置为:具体的处理方法:用到了两个栈,一个符号栈,一个数字栈符号栈的处理方式是:
单调栈
的方式,只有当栈外符号的优先级高于栈顶符号的优先级时才会将栈外符号压入栈中。
镇长1998
·
2020-08-22 04:09
JAVA学习
新发现
Sub Matrix Sum(UCF Local Programming Contest 2019(Practice),二分
单调栈
)
一.题目链接\quadSubMatrixSum二.题目大意\quad给出一个大小R×CR\timesCR×C的矩阵,要求选出一个子矩阵,在子矩阵和不小于SSS的条件下,输出子矩阵的最小大小.\quad1≤R,C,R×C≤105,−109≤S,矩阵元素≤1091\leqR,C,R\timesC\leq10^5,-10^9\leqS,矩阵元素\leq10^91≤R,C,R×C≤105,−109≤S,矩
The___Flash
·
2020-08-22 01:33
#
二分
#
栈
【LeetCode】85. 最大矩形(hard)(21届华为提前批面试手撕代码题)
相似题目:【LeetCode】84.柱状图中最大的矩形(
单调栈
).1.题目描述:给定一个仅包含0和1的二维二进制矩阵,找出只包含1的最大矩形,并返回其面积。
ON_THE_WAY_FOREVER
·
2020-08-21 22:53
python
数据结构
关于
单调栈
的使用
表现良好的最长时间段--这道题的关键就是前缀和,以及
单调栈
。前缀和意思是说如果大于8就是1否则就是-1,这样可以形成新的数组,然后新的数组中如果两个数中后面的数大于前面则这个区间就是有效区间。
dogndaxiaodong
·
2020-08-21 22:16
leetcode
算法
C语言---
单调栈
leetcode496、503、739、239leetcode496:可以使用
单调栈
,个人感觉暴力解法比较容易做出来,使用单调站遇到几个坑:1、int*,返回的必须是指针,不可以使用数组,否则报错:Line207
Crystal_qunzi
·
2020-08-21 22:42
[算法]
单调栈
专题
单调栈
是一种理解起来很容易,但是运用起来并不那么简单的数据结构。一句话解释
单调栈
,就是一个栈,里面的元素的大小按照他们所在栈内的位置,满足一定的单调性。
weixin_34194702
·
2020-08-21 22:07
数据结构与算法
单调栈
萌新讲解
单调栈
哈。。。怎么开始介绍这个
单调栈
是一个小问题。。。
weixin_30596343
·
2020-08-21 22:16
左神算法学习日记——
单调栈
单调栈
,一种可以找到左右边界的数据结构//利用
单调栈
找到一个数的左边最近的比他小的数(左边界)和右边最近的比他小的数(右边界)intmaxhist(vectorhist){stackmax;intres
w275412237
·
2020-08-21 21:47
学习日记
单调栈
(总结+例题)
定义:
单调栈
,顾名思义,是栈内元素保持一定单调性(单调递增或单调递减)的栈。这里的单调递增或递减是指的从栈顶到栈底单调递增或递减。既然是栈,就满足后进先出的特点。与之相对应的是单调队列。
qdu_zhaiH
·
2020-08-21 21:28
日常刷题
整理
小翟的算法笔记
上一页
25
26
27
28
29
30
31
32
下一页
按字母分类:
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
其他