本题是最基本的分段树操作了。或者一般叫线段树,不过好像和线段没什么关系,只是分段了。
不使用lazy标志,更新只是更新单点。
如果不使用分段树,那么更新时间效率只需要O(1),使用分段树更新效率就需要O(lgn)了。
但是不是用分段树,那么查询的时间效率是O(n),而分段树查询效率是O(lgn)
这就是amortize分摊了时间,而且lgn真的很快,数据不是非常巨大的时候,接近常数了。
故...
分类:
其他好文 时间:
2014-06-20 12:41:05
阅读次数:
206
线段树。 1 #include 2 3 #define maxn 55555 4 5 int
sums[maxn>1;18 build(l, m, rt>1;30 if (des =r)40 return sums[rt];41 42 m =
(l+r)...
分类:
其他好文 时间:
2014-06-03 07:38:20
阅读次数:
219
线段树的单点更新,区域查询操作。
#include
#include
#include
#include
#include
using namespace std;
#define lmin 1
#define rmax n
#define lson l,(l+r)/2,rt<<1
#define rson (l+r)/2+1,r,rt<<1|1
#define root lmin,rmax,1...
分类:
其他好文 时间:
2014-05-26 05:25:50
阅读次数:
187
1 //Accepted 250MS 2480K 2 #include 3 #include 4
const int MAXN = 50005; 5 struct node 6 { 7 int l,r; 8 int add,sum; 9
}f[3*MAXN];10 int n;...
分类:
其他好文 时间:
2014-05-17 20:36:37
阅读次数:
316
Problem Description
C国的死对头A国这段时间正在进行军事演习,所以C国间谍头子Derek和他手下Tidy又开始忙乎了。A国在海岸线沿直线布置了N个工兵营地,Derek和Tidy的任务就是要监视这些工兵营地的活动情况。由于采取了某种先进的监测手段,所以每个工兵营地的人数C国都掌握的一清二楚,每个工兵营地的人数都有可能发生变动,可能增加或减少若干人手,但这些都逃不过C国的监视...
分类:
其他好文 时间:
2014-05-15 18:36:59
阅读次数:
208
半个月时间终于把那些杂七杂八的学完了,虽然学完也,也只是有了个模板,自己手敲还是不太行,所以现在开始要疯狂刷题了!!!!!!
这题裸的树状数组,以前写那道《敌兵布阵》的时候写过,所以写得还挺快的吧。
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include...
分类:
其他好文 时间:
2014-05-08 04:12:54
阅读次数:
420
敌兵布阵Time Limit: 2000/1000 MS (Java/Others)
Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 37903 Accepted
Submission(s): 15985 Problem ...
分类:
其他好文 时间:
2014-05-07 17:52:06
阅读次数:
317
初学线段树(SegmentTree)从HH大神那你学来的模板风格。感觉确实相当飘逸。现在做了4题。。单点更新的,想放上来,,以后慢慢整理!!·单点更新」
·刷题参考」hdu1166 敌兵布阵线段树第一题,单点更新第一题,可以作为线段树的模板,思路:兵工厂作为数量n映射作为线段总长,更具输入...
分类:
其他好文 时间:
2014-05-06 12:23:53
阅读次数:
426
DescriptionC国的死对头A国这段时间正在进行军事演习,所以C国间谍头子Derek和他手下Tidy又开始忙乎了。A国在海岸线沿直线布置了N个工兵营地,Derek和Tidy的任务就是要监视这些工兵营地的活动情况。由于采取了某种先进的监测手段,所以每个工兵营地的人数C国都掌握的一清二楚,每个工兵...
分类:
其他好文 时间:
2014-05-05 11:52:53
阅读次数:
200