笛卡尔树
Self-Discipline
在校大学生
展开
-
POJ 2201
题目:笛卡尔树:笛卡尔树中的每个节点有两个数据域k,a,对于数据域k,满足二叉搜索树性质,对于数据域a,满足最小堆性质。给出N个节点,1<=N<=50000,每个节点由一对k,a构成,判断能否根据这些节点构建一颗笛卡尔树,如果可以构建则输出构造出的笛卡尔树,否则输出“NO”。 解题思路:首先,根据N个节点,肯定可以构造出一颗笛卡尔树。 参考博客:https://www.cnblog...原创 2019-05-23 21:51:31 · 202 阅读 · 0 评论 -
hdu1506
问题:有N条的长条状的矩形,宽度都为1,第i条高度为Hi,相邻的竖立在x轴上,求最大的子矩形面积。 1≤ N≤ 105 1≤ Hi≤ 109 分析:我们只需要求出每条矩形最多可以向两边拓展的宽度,就可以算出以这个矩形高度为高的最大子矩形面积。最后我们求一个最大值即可。这里可以用dp或者笛卡尔树。笛卡尔树关键在于构造。 笛卡尔树的构造方式为:首先我们按照横坐标从左往右进行处理,同...原创 2019-05-23 22:42:30 · 453 阅读 · 0 评论 -
hdu 6305 RMQ Similar Sequence(笛卡尔树模板)
题意: 设RMQ(A,l,r)为最小的 i ,使得a[i]是a[l]-a[r]中的最大值。若A、B两个数组RMQ相似,则A、B等长,且在1<=l<=r<=n内,RMQ(A,l,r)=RMQ(B,l,r)。现在A数组已知,B数组在[0,1]均匀分布,设B数组的权重为数组内各元素的和。若A与B相似,求B权重的期望。 题解: RMQ-Similar实际上就是 A和 B的笛卡尔树一样(...原创 2019-07-19 10:33:17 · 221 阅读 · 0 评论