线段树
cadongllas
这个作者很懒,什么都没留下…
展开
-
#342Div2-625D Babaei and Birthday Cake线段树优化DP
首先要明白一个蛋糕在另一个之上当且仅当序号和体积都比原来的大 然后一维显然可以用sort解决,另一维暴力是n^2显然过不了,考虑优化 不妨按体积排序,然后记录对应的在原序列中的序号,然后扫一遍,每次处理完当前之后,便把这个体积插入线段树中,对应的节点就是在原序列中对应的节点,然后每次用logn做大查询,就是简单的线段树优化DP的问题。 当然,比如树状数组等同样支持区间Max的也能做到#inc原创 2016-03-17 16:48:38 · 345 阅读 · 0 评论 -
HDU5649 DZY Loves Sorting 二分+线段树
上周六BC的最后一道题 感觉还是挺经典的做法的,首先因为是n的全排列,所以可以直接二分答案然后用线段树判断,好吧其实bc的题解说的已经很清楚了 这是一道良心的基础数据结构题。 我们二分a[k]a[k]的值,假设当前是midmid,然后把大于midmid的数字标为11,不大于midmid的数字标为00。然后对所有操作做完以后检查一下a[k]a[k]位置上是00还是11。 因为原创 2016-03-22 22:29:17 · 642 阅读 · 0 评论 -
hdu 4614 线段树+二分
题意:n个花瓶,m个操作,花瓶里面有的有花,有的是空的。1操作是从a开始往右放b朵花,花瓶有了的不放,跳过,直到a右边都放满了花,多余的扔了。输出本次放花的起始位置 求和操作可以用线段树解决,操作1的放置的起始位置,通过二分求就可以 #include #include #include #include #include #define rep(i, j, k) for(in原创 2016-09-03 15:28:48 · 254 阅读 · 0 评论