文章分类 -  Segment Tree

【HDU】 1698 Just a Hook
摘要:题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1698题目意思是给出n个sticks,初始他们的价值都是1。接下来有q个操作,是将x~y的sticks的价值改为z(z=1、2、3),问操作结束后n个sticks的总价值。NotOnlySuccess称之为成段更新问题,而这类问题要用到懒惰标记,merlininice师父最初跟我讲这块的时候将方法和原理全盘托出,所以我在理解这块的时候还是很顺畅的。 懒惰更新的实质就是在处理区间问题的时候,每次都只需要处理到整区间,不需要再更新到叶子节点了。但是如果仅仅只这样处理,肯定是不对的,如果我们后续访问到.. 阅读全文
posted @ 2012-08-14 10:29 Yuna_ 阅读(102) 评论(0) 推荐(0)
【HDU】 1255 覆盖的面积
摘要:题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1255 看这个题目AC的人数也该知道,是线段树求面积的经典题,既然是经典题,岂有不AC之理? 推荐:http://www.cnblogs.com/ka200812/archive/2011/11/13/2247064.html 说是变态,主要原因这种方法要是没接触过,我肯定是想不到的。不过搞acm的应该已经习惯了,算法本来就是很...神奇的东西。做法: 首先是离散化,由于求解面积一类问题涉及到坐标值,而坐标值一般都是非interger的,故需要离散化。这个问题在之前那篇博文上已有介绍,便不... 阅读全文
posted @ 2012-08-14 10:08 Yuna_ 阅读(77) 评论(0) 推荐(0)
【Timus Online Judge】 1019 Line Painting
摘要:·成段线段树更新+离散化:Line PaintingTime Limit: 2.0 secondMemory Limit: 16 MBThe segment of numerical axis from 0 to 109is painted into white color. After that some parts of this segment are painted into black, then some into white again and so on. In total there have been madeNre-paintings (1 ≤N≤ 5000). 阅读全文
posted @ 2012-08-14 08:50 Yuna_ 阅读(174) 评论(0) 推荐(0)
【POJ】 3468 A Simple Problem with Integers
摘要:题目链接:http://poj.org/problem?id=3468成段更新线段树的简单题,因为思路很容易出来,而且基本套用模板就能AC掉… 不说了… = = 这是我写了两天线段树唯一一道1Y的题,坑…#define LL(x) (x<<1) #define RR(x) x<<1|1 //使用位运算一来方便,二来优化一点点时间(有些情况下能优化不少时间那~)#define MAXN 10000000int n, q, a[100005];struct node{ int l, r; int add; //更新标记变量 long long sum; ... 阅读全文
posted @ 2012-07-30 01:39 Yuna_ 阅读(98) 评论(0) 推荐(0)