
线段树
Laaahu_
这个作者很懒,什么都没留下…
展开
-
HDU - 4553 约会安排 (线段树区间合并)
题目链接 : HDU - 4553题意:一个人拥有T的总时间, 和M件要做的事情。三种事情:一是屌丝基友约他出去玩, 他如果在某个时间段内有一段连续时间就和基友出去玩,相应的那段时间将会被占用。二是女神约她出去, 他会在自己的安排结束的时间段内去找一段连续时间和女神去约会,相应的这段时间也被占用将不再被后面的事情使用。如果在这段时间里没有找到他就会去,找已经被基友占的时间,会选择放基友的...原创 2019-11-20 20:47:27 · 465 阅读 · 0 评论 -
HDU 3974(Assign the task)线段树维护dfs序
题目:在这里啊题意:一个公司有一个老板及许多员工 ,除老板外,每个员工都有自己的领导,然而每次分配工作之后,如果自己的领导得到了工作则自己也会去干相同的工作。每次询问要问一个一人在干什么工作。思路:最简单可以想到的就是单点维护单点查询,这个我帮你们试过了,妥妥超时,所以我们要优化一下,要区间更新,单点查询,因为每个人都有自己的领导,所以从公司的老板开始做深搜,这样子之后统计一下每个点...原创 2019-09-03 22:09:32 · 409 阅读 · 0 评论 -
CF 242E (XOR ON SEGMENT)线段树维护区间异或,求和
题意:一个定长的数组,然后他有两个操作;①查询区间 【L,R】的区间和。②一个更下新操作,对区间【L,R】内的数分别与一个固定的值X做异或操作,结果作为这个位置的新的值。思路:异或操作是在二进制的基础上进行的,所以我们开20棵线段树,每一颗线段树 去维护一个二进制位的1个数。至于为什么存1的个数,我们来看看一个例子。例如,一个数组有四个数字,1到4分别为5,6,7,8;他们的 二进...原创 2019-09-10 12:28:53 · 1013 阅读 · 6 评论 -
HDU 4578(Transformation)线段树区间更新及查询
题目:客官进来看看啊题意:四种操作:①对给定区间的所有值加上 一个数 c;②对给定区间的所有数乘上一个数 c;③将给定区间的所有数变为 c ;④输出一个区间的所有数的和,平方和,立方和 值 mod 10007。这道题第一眼就知道是一个线段树的题目, 这个很容易就可以看出来,最主要的是怎么将这些操作联系起来。思路:因为有三种更新操作,所以需要三个 懒惰标记 ,分别表示 加 , 乘...原创 2019-09-10 16:44:23 · 365 阅读 · 0 评论