单调队列/单调栈
kma_093
山高水闊 苦海無涯
展开
-
洛谷p2216 [HAOI2007]理想的正方形
题目链接: 理想的正方形 题目分析: 这道题对于我这种菜鸡来说其实有点难……值得一做核心思想:分别在行和列上维护单调队列 用x_min[i][j]表示以mapp[i][j]为起点向右推n个里的最小值,最大值同理 用y_min[i][j]表示以mapp[i][j]为起点向下推n个里的最小值,最大值同理 先用mapp更新x_min,x_max,再用x_min,x_max分别更新y_min,y_m...原创 2019-01-20 01:13:00 · 81 阅读 · 0 评论 -
WOJ1109 奶牛排队
题目链接: WOJ1109 题目描述: 奶牛在熊大妈的带领下排成了一条直队。 显然,不同的奶牛身高不一定相同…… 现在,奶牛们想知道,如果找出一些连续的奶牛,要求最左边的奶牛A是最矮的,最右边的B是最高的,且B高于A奶牛,且中间如果存在奶牛,则身高不能和A、B奶牛相同,的这样的一些奶牛最多会有多少头。 从左到右给出奶牛的身高,请告诉它们符合条件的最多的奶牛数(答案可能是0、2,但不会是1)。...原创 2019-01-19 18:44:00 · 751 阅读 · 0 评论 -
[WOJ1138]最大子序和
题目链接: WOJ1138 题目分析: 是很经典的一道题,乱搞的方法应该有不少,这里介绍O(n)的单调队列做法 首先维护一个前缀和,然后枚举每一个位置,维护一个前缀和单增的单调队列,但队列仅储存下标,将下标在当前位置的范围k以外的元素出队 因为对于每一个位置,ans=sum[i]-min(sum[j])(1<=i<=n,1<=j<=i) 所以用sum[i]减去单调队列...原创 2019-01-19 20:41:00 · 66 阅读 · 0 评论