单调队列
tomjobs
别慌,慌也没用
展开
-
LeetCode 1438. 绝对差不超过限制的最长连续子数组(滑动窗口,单调队列/map,set)
思路: 解法1和解法2参考了leetcode题解,主要是参考码风。解法3是博主自己写的,效率相对不高。 解法1: 双指针维护滑动窗口,使用两个单调队列记录当前区间最大值最小值 双指针维护这个窗口,要判断其是否合理需要记录最大值最小值,可以想到用单调队列。但是如何用一个双指针维护两个队列呢? 窗口扩大好办,就是一直右移右指针。而窗口缩小的时候,实际上只需要考虑极值,要么是删掉最大值单调队列的头指针,要么是删掉最小值单调队列的头指针。所以左移左指针的时候,只要其中一个单调队列队首和左指针数字相同,那就弹出。.原创 2021-02-23 14:49:37 · 197 阅读 · 0 评论 -
F. Fake Maxpooling(二维单调队列,类似筛法求lcm) 2020牛客暑期多校训练营(第二场)
题意: a[i][j]=lcm(i,j)a[i][j]=lcm(i,j)a[i][j]=lcm(i,j) 求所有k∗kk*kk∗k小矩阵的最大值和。 思路: 维护横向单调队列求每一行的前kkk个数最值,再用纵向单调队列求出纵向前kkk个数最值。这样求出每一点对应k∗kk*kk∗k矩阵的最值了。 但是本题求lcm是log,会被卡(虽然数据太弱,没有卡,但是到了5000就真的很慢)。题解用了类似筛法的方式,n^2的求出每一个位置的lcm,值得学习。 #include <cstdio> #inclu.原创 2020-07-14 09:39:54 · 327 阅读 · 2 评论 -
ACWING135. 最大子序和(单调队列)
输入一个长度为n的整数序列,从中找出一段长度不超过m的连续子序列,使得子序列中所有数的和最大。 注意: 子序列的长度至少是1。 输入格式 第一行输入两个整数n,m。 第二行输入n个数,代表长度为n的整数序列。 同一行数之间用空格隔开。 输出格式 输出一个整数,代表该序列的最大子序和。 数据范围 1≤n,m≤300000 输入样例: 6 4 1 -3 5 1 -2 3 输出样例: 7 思路: 滑动窗...原创 2020-03-01 22:00:20 · 230 阅读 · 0 评论 -
Dividing the Path POJ - 2373(单调队列dp)
Farmer John’s cows have discovered that the clover growing along the ridge of the hill in his field is particularly good. To keep the clover watered, Farmer John is installing water sprinklers along t...原创 2020-01-19 18:57:53 · 247 阅读 · 0 评论 -
P1886 滑动窗口 /【模板】单调队列
展开 题目描述 有一个长为 nn 的序列 aa,以及一个大小为 kk 的窗口。现在这个从左边开始向右滑动,每次滑动一个单位,求出每次滑动后窗口中的最大值和最小值。 例如: The array is [1,3,-1,-3,5,3,6,7][1,3,−1,−3,5,3,6,7], and k = 3k=3。 输入格式 输入一共有两行,第一行有两个正整数 n,kn,k。 第二行 nn 个整数,表示序列...原创 2020-01-19 14:55:40 · 1624 阅读 · 0 评论 -
Alice's mooncake shop HDU - 4122(单调队列, RMQ)
The Mid-Autumn Festival, also known as the Moon Festival or Zhongqiu Festival is a popular harvest festival celebrated by Chinese people, dating back over 3,000 years to moon worship in China’s Shang ...原创 2020-01-17 19:23:11 · 247 阅读 · 0 评论 -
OpenStreetMap CodeForces - 1195E(二维单调队列)
Seryozha conducts a course dedicated to building a map of heights of Stepanovo recreation center. He laid a rectangle grid of size n×m cells on a map (rows of grid are numbered from 1 to n from north ...原创 2019-10-24 16:28:08 · 342 阅读 · 0 评论 -
BZOJ1047. [HAOI2007]理想的正方形(二维单调队列)
Description 有一个ab的整数组成的矩阵,现请你从中找出一个nn的正方形区域,使得该区域所有数中的最大值和最小值 的差最小。 Input 第一行为3个整数,分别表示a,b,n的值第二行至第a+1行每行为b个非负整数,表示矩阵中相应位置上的数。每 行相邻两数之间用一空格分隔。 100%的数据2<=a,b<=1000,n<=a,n<=b,n<=1000 ...原创 2019-10-24 16:01:26 · 185 阅读 · 0 评论 -
Balanced Playlist CodeForces - 1237D(单调队列)
Your favorite music streaming platform has formed a perfectly balanced playlist exclusively for you. The playlist consists of n tracks numbered from 1 to n. The playlist is automatic and cyclic: whene...原创 2019-10-24 08:50:10 · 459 阅读 · 0 评论 -
洛谷P1725 琪露诺(单调队列优化dp)
题目描述 在幻想乡,琪露诺是以笨蛋闻名的冰之妖精。 某一天,琪露诺又在玩速冻青蛙,就是用冰把青蛙瞬间冻起来。但是这只青蛙比以往的要聪明许多,在琪露诺来之前就已经跑到了河的对岸。于是琪露诺决定到河岸去追青蛙。 小河可以看作一列格子依次编号为0到N,琪露诺只能从编号小的格子移动到编号大的格子。而且琪露诺按照一种特殊的方式进行移动,当她在格子i时,她只移动到区间[i+l,i+r]中的任意一格。你问为什么...原创 2019-09-07 12:19:53 · 269 阅读 · 0 评论