problem:https://leetcode.com/problems/daily-temperatures/ 一道使用单调栈维护(递减序列)的题目,比较简单。 ...
分类:
其他好文 时间:
2019-07-30 11:09:17
阅读次数:
113
"84. 柱状图中最大的矩形" 前置 单调栈 做法 连续区间组成的矩形,是看最短的那一块,求出每一块左边第一个小于其高度的位置,右边也同理,此块作为最短限制。需要两次单调栈 单调栈维护递增区间,每次不满足弹出栈顶,顺便利用此栈顶和当前位置计算栈顶能覆盖的长度 用来计算。仅需一次单调栈 ...
分类:
其他好文 时间:
2019-07-29 00:12:55
阅读次数:
85
题目链接:https://www.luogu.org/problem/P2659 实际上就是要我们求出每个数字左右两边第一个小于它的数字位置,然后两个位置所在的开区间长度乘以这个数字,取最大值输出。 因为是求两边第一个小于a[i]的数字,所以我们弄一个递增(其实是不减小就可以了,可以有相同大小的元素 ...
分类:
其他好文 时间:
2019-07-28 00:14:34
阅读次数:
112
题号标题已通过代码题解通过率团队的状态 A meeting 点击查看 树直径 604/2055 通过 B xor 点击查看 线段树维护线性基交 81/861 未通过 C sequence 点击查看 单调栈 479/2755 通过 D triples I 点击查看 构造 464/2974 通过 E t ...
基本算法 位运算 枚举 贪心 递归 分治 递推 构造 模拟 数据结构 简单数据结构 树形结构 线段树 树状数组 字典树 伸展树 左偏树 动态树 lca&rmq 划分树 SBT 字符串 kmp AC自动机 后缀数组 最小表示法 其它 并查集 散列表 单调栈 块状链表 双向链表 离线分治算法 可持久化数 ...
分类:
其他好文 时间:
2019-07-27 09:39:46
阅读次数:
96
最近打了三场比赛疯狂碰到单调栈和单调队列的题目,第一,二两场每场各一个单调栈,第三场就碰到单调队列了。于是乎就查各种博客,找单调栈,单调队列的模板题去做,搞着搞着发现其实这两个其实是一回事,只不过利用了容器内元素单调的不同特性,用来加速处理不同的问题。 单调栈解决的是以某个值为最小(最大)值的最大区 ...
分类:
其他好文 时间:
2019-07-26 17:37:17
阅读次数:
94
题目链接 "传送门" 思路 首先我们对$a$正反各跑一边$LIS$,记录每个位置在前一半的$LIS$中应该放的位置$ans1[i]$,后一半的位置$ans2[i]$。 对于字典序最小的方案,我们找到第一个峰值,然后往前遍历。在$i$这个位置,如果它在$LIS$中放的位置是$pos$,那么我们先看当前 ...
分类:
其他好文 时间:
2019-07-24 19:34:45
阅读次数:
175
原题目链接:http://poj.org/problem?id=2559 解题思路: 用单调栈求任意每个区间的最小值及区间长度,为什么记录区间最小值呢?(木桶装水原理,装水量取决于最短木板长)。枚举每个区间,维护最大答案。 //自行百度单调栈 AC代码: ...
分类:
其他好文 时间:
2019-07-24 13:44:21
阅读次数:
91
嗯... 题目链接:http://poj.org/problem?id=2559 一、单调栈: 1.性质: 单调栈是一种特殊的栈,特殊之处在于栈内的元素都保持一个单调性,可能为单调递增,也可能为单调递减。 2.模样: 这是一个单调递增的栈,如果我们插入的元素大于栈顶元素,则直接入栈; 如果我们插入的 ...
分类:
其他好文 时间:
2019-07-22 15:19:08
阅读次数:
85
题意 一条路被划分成了n段,每一段有一个高度,一个人有步幅k,代表他最多可以从第x段一步到第x+k段,当h[x]>h[x+k]时,不消耗体力,否则消耗一点体力,求最后到第n段路时最少消耗的体力,最初在第一段路。 对于 30%的数据,保证 T = 1;对于另 20% 的数据,保证 N <= 500;对 ...
分类:
其他好文 时间:
2019-07-21 20:06:55
阅读次数:
103