随笔分类 -  数据结构-单调队列、单调栈

摘要:题目链接 "BZOJ3235" 题解 求出每个点为顶点,分别求出左上,左下,右上,右下的矩形的个数g[i][j] 并预处理出f[i][j]表示点(i,j)到四个角的矩形内合法矩形个数 就可以容斥计数啦 枚举顶点(i,j),乘上另一侧矩形个数,如图: 但是会算重,对于这样的情况 减去即 阅读全文
posted @ 2018-07-12 21:36 Mychael 阅读(314) 评论(0) 推荐(0) 编辑
摘要:题目链接 "BZOJ2276" 题解 一开始看错题,以为求的是可以不连续的,想出一个奇怪的线段树,发现空间根本开不下?? 题目要我们求连续的最长可能不下降区间 对于区间[l,r]如果合法,当且仅当对于i[l,r],jr[i]显然就不满足不下降性 我 阅读全文
posted @ 2018-06-23 16:09 Mychael 阅读(133) 评论(0) 推荐(0) 编辑
摘要:题目链接 "BZOJ3521" 题解 容易想到用前缀和搞 如果我们令p1j1,记前缀和为s[i] 我们就是要找到一段区间[l,r],使得 i[l,r]s[i]s[l1]0 $$\forall i \in [ 阅读全文
posted @ 2018-05-27 11:49 Mychael 阅读(316) 评论(0) 推荐(0) 编辑
摘要:题目链接 "BZOJ4826" 题解 蒟蒻智力水平捉急orz 我们会发现相邻的ij贡献一定是p1,可以很快算出来【然而我一开始忘了考虑调了半天】 我们现在只考虑不相邻的 我们只需要找出所有产生贡献的i,j即可 我们发现每一个产生贡献的i,j都能对应到一个三元组(i,k,j) 阅读全文
posted @ 2018-05-15 20:54 Mychael 阅读(248) 评论(0) 推荐(0) 编辑
摘要:题目链接 "BZOJ3238" 题解 简单题 经典后缀数组 + 单调栈套路,求所有后缀lcp 阅读全文
posted @ 2018-05-11 07:34 Mychael 阅读(125) 评论(0) 推荐(0) 编辑
摘要:题目链接 "BZOJ1233" 题解 有一个贪心策略:同样的干草集合,底长小的一定不比底长大的矮 设f[i]表示i...N形成的干草堆的最小底长,同时用g[i]记录此时的高度 那么 $$f[i] = min\{f[j]\} \quad [sum[j 1] sum[i 1] \ge f[j 阅读全文
posted @ 2018-05-11 07:08 Mychael 阅读(148) 评论(0) 推荐(0) 编辑
摘要:题目链接 "BZOJ1855" 题解 设f[i][j]表示第i天结束时拥有j张股票时的最大收益 若iW,显然在这之前不可能有交易 f[i][j]=max{f[i1][j],ap[i]j}[jas[i]] 否则,就有三种选择: ① 阅读全文
posted @ 2018-05-10 14:49 Mychael 阅读(176) 评论(0) 推荐(0) 编辑
摘要:题目 给定长度为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]的不同子序 阅读全文
posted @ 2018-05-03 16:56 Mychael 阅读(270) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示