线段树
G_rass
这个作者很懒,什么都没留下…
展开
-
hdu 1166 敌兵布阵
基本的线段树题目,练一下代码,此外代码中包括两个查询函数,思路有几点不同之处 #include #include #include #define MAXN 600000 using namespace std; struct note { int rr,ll; int s; }q[MAXN*3]; int a[MAXN]; void build(int i,int原创 2015-09-23 17:21:48 · 349 阅读 · 0 评论 -
poj 3264
思路:线段树求区间最大最小值 #include #include #include #define MAXN 300000 using namespace std; typedef long long ll; ll a[MAXN]; struct note { int rr,ll; long long mm,nn; }q[MAXN*3]; void build(in原创 2015-09-23 17:49:51 · 357 阅读 · 0 评论 -
poj 3468 A Simple Problem with Integers
思路:线段树的初步进阶使用,主要思想是每一个节点中增加一个inc储存增加的量, 具体使用方法详见代码(参考自kuangbin大牛) #include #include #include #define MAXN 1000000 using namespace std; typedef long long ll; struct note { long long ll,rr;原创 2015-09-23 20:36:02 · 301 阅读 · 0 评论 -
poj 2528 Mayor's posters
思路:线段树加离散化处理。(参考自kuangbin大牛) 首先常规做法 以【8 10】【 3 4】【 7 10】为例,预处理线段树布尔值全为false,从后往前更新,先检查【7,10】区间内是否存在false,存在即返回true,然后此区间全部更新为true,然后依次【3,4】 【8,10】,注意到【8,10】区间内全部为false,返回false。根据体重的数据范围,,这样毫无疑问会MT,所原创 2015-09-23 23:00:57 · 325 阅读 · 0 评论