摘要: 主席树+dfs序 b在a上方时可以O(1)算出来,子树中就用主席树查询区间和,权值线段树的下标是深度,值是子树size-1,每次查询就行了。。。线段树合并挂了 #include<bits/stdc++.h> using namespace std; typedef long long ll; con 阅读全文
posted @ 2017-10-31 20:16 19992147 阅读(182) 评论(0) 推荐(0) 编辑
摘要: 树形dp+笛卡尔树+单调栈 这道题跟树形dp有什么关系? 事实上,我们对矩形建立笛卡尔树,先找出最矮的矩形,向两边区间最矮的矩形连边,这样就构成了一棵二叉树,因为只有一个矮的区间会对高的区间造成影响,而且儿子之间不会互相影响,并且这样一层一层保证了每段矩形都会被覆盖到,其实就是单调栈,所以这样连是对 阅读全文
posted @ 2017-10-31 11:09 19992147 阅读(264) 评论(0) 推荐(0) 编辑