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

浙公网安备 33010602011771号