线段树
文章平均质量分 79
SeeYouAlways
practice make perfect
展开
-
线段树专题
最最基础的线段树,只更新叶子节点,然后把信息用PushUP(int r)这个函数更新上来。hdu1166 敌兵布阵线段树 hdu 1166 敌兵布阵 单点更新区间求和hdu1754 I Hate It线段树 hdu 1754 I Hate It 单点更新 区间求最值hdu1394 Minimum Inversion Numberhdu 1394 Minimum Invers转载 2013-08-02 21:57:11 · 602 阅读 · 0 评论 -
Poj 2528 线段树+离散化
题意:那里准备要竞选长,每个候选人都可以在一面墙上贴自己的海报,可以连续的贴一块区域,后来贴上的可以覆盖原来的,问最后可以看见多少张海报(只要不完全覆盖算一张)思路:用到线段树,但是因为WAll=10^7,所以建那么大的树肯定会TLE,所以要进行离散化在构造线段树的节点结构体时,添加变量clor。clor=0时表示c线段没有贴海报,或者贴了不止一张海报;clor>0时表示贴了一张海报,并且原创 2013-07-26 16:32:47 · 511 阅读 · 0 评论 -
Hdu 1394 Minimum Inversion Number
题意:输入n,下面给出n个数,分别是0-n,顺序不定,可以通过对序列进行移动,每次移动把最前面的数移到后面,问通过移动形成的序列,使得得到的逆序数最少思路:这题的特殊性方便了我们去寻找最小值。现在假设我们知道了原序列的逆序数是first,那么每次移动后怎么算出新的逆序数呢?因为每次都只是移动头元素,假设头元素为x,那么可以知道由x产生的逆序对的个数为x,因为有x个数小于它(0,1,2……x-1原创 2013-08-03 20:38:51 · 441 阅读 · 0 评论 -
CF #136Div2 D. Little Elephant and Array
D. Little Elephant and Arraytime limit per test4 secondsmemory limit per test256 megabytesinputstandard inputoutputstandard outputThe Little Elephant loves playing with arrays. He has原创 2013-08-15 19:37:53 · 1252 阅读 · 0 评论 -
Hdu 2795 Billboard
题意:给一个h*w的公告牌,h是高度,w是宽度,一个单位高度1为一行,然后会有一些公告贴上去,公告是1*wi大小的长纸条,优先贴在最上面并且最左边的位置,如果没有空间贴得下,就输出-1,可以的话,就输出所贴的位置(第几行)思路:每次贴一张,去找一个空间>=w的最左上边的位置,所以优先进入左孩子,每次都要把孩子所剩空间的最大值更新至父节点代码:#include #include #i原创 2013-08-23 21:05:46 · 479 阅读 · 0 评论 -
Hdu 1542/ POj 1151 Atlantis 线段树+矩形面积并
题意:给出n个矩形,求它们的面积并思路:采用扫面线的思想,把矩形分成两条边,上边和下边,对横轴建树,然后从下到上扫描上去, cnt 这个变量表示了该节点表示的区间被完全覆盖,如果cnt=0,说明没有被完全覆盖(但不代表没有被覆盖),sum代表该区间内被覆盖的线段的长度总和,要算出该节点所代表的区间被覆盖的长度,需要由它左右孩子节点被覆盖的长度相加所得。如果cnt=1,表示被完全覆盖,覆盖长度就原创 2013-08-27 13:28:26 · 600 阅读 · 0 评论 -
Hdu 1255 覆盖的面积 线段树+矩形面积并
继续面积并学习中。。。(线段树解决)题意:给定平面上若干矩形,求出被这些矩形覆盖过至少两次的区域的面积思路:其实跟求矩形面积并的思想是一样的,只不过在update里做了一点修改,矩形面积并只需要求至少覆盖一次的面积,而这题是至少覆盖两次的面积,稍微做点修改就可以了一样的,要求面积,就要求出至少覆盖两次的有效长度乘以高度差即可,求有效长度:1.cnt>1 : 说明该区间被覆盖两次或以原创 2013-08-27 13:40:50 · 1128 阅读 · 0 评论 -
BNU A Simple Tree Problem 线段树
A Simple Tree ProblemGiven a rooted tree, each node has a boolean (0 or 1) labeled on it. Initially, all the labels are 0.We define this kind of operation: given a subtree, negate all its labels.原创 2013-10-23 20:02:00 · 545 阅读 · 0 评论