题目链接:传送门 题目大意:中文题,略 题目思路:树链剖分,区间更新,区间查询。 闲谈: 只想说这道题做的好苦逼。。去长春现场赛之前就没A,回来后又做了2天才A掉,蒟蒻太菜了 这道题也没有想象中那么难,就是代码有点长。。 在查询的时候注意判断端点交界处如果相同则答案-1。 ...
分类:
其他好文 时间:
2016-09-30 21:12:45
阅读次数:
144
/*向下取整smg! Popoqqq:题目大意:给定一个序列,提供下列操作:1.将[l.r]区间内每个数a[i]变为sqrt(a[i])2.查询[l,r]区间的和根号是不支持区间修改的,于是我们选择单点修改区间查询的树状数组,但是这样是O(n^2)的,怎么办?我们发现一个数x最多开loglogx次根 ...
分类:
其他好文 时间:
2016-09-17 23:34:30
阅读次数:
188
今天继续介绍——线段树之延迟标记 接上期《数据结构》线段树入门(一):http://www.cnblogs.com/shadowland/p/5870339.html 在上期介绍了线段树的最基本内容(线段树单点修改,区间查询),这次将介绍:区间修改,区间查询。 Question: 给你N个数,有两种 ...
分类:
其他好文 时间:
2016-09-14 01:46:15
阅读次数:
153
可持久化数据结构 题目链接:http://acm.xidian.edu.cn/problem.php?id=1181 用vector实现可持久化 这题要求的是一个支持区间查询的可持久化数据结构。这里使用vector巧妙地实现:pair<time,value>用pair存储时间戳以及当前时间的值,qu ...
分类:
其他好文 时间:
2016-09-06 21:19:12
阅读次数:
188
LCIS Time Limit: 6000/2000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 6592 Accepted Submission(s): 2866 Problem De ...
分类:
其他好文 时间:
2016-09-02 20:34:40
阅读次数:
171
多次修改一棵树节点的值,或者询问当前这个节点的子树所有节点权值总和。 首先预处理出DFS序L[i]和R[i] 把问题转化为区间查询总和问题。单点修改,区间查询,树状数组即可。 注意修改的时候也要按照dfs序修改,因为你查询就是按照dfs查的,所以修改也要用dfs序修改 L[i]是唯一的。 #incl ...
分类:
移动开发 时间:
2016-09-01 01:59:34
阅读次数:
144
【算法】线段树 【题解】区间加上同一个数+区间查询最大值。注意和谐值可以是负数,初始化ans为负无穷大。 #include<cstdio> #include<algorithm> using namespace std; const int maxn=100010,ainf=-0x3f3f3f3f; ...
分类:
其他好文 时间:
2016-08-21 12:19:18
阅读次数:
107
1.线段树的树高: 这里的n=r-l+1,至多2*(log2n-1)个点。 2.区间查询时,每层至多只有两个区间会被询问。(父亲被完全覆盖的孩子,在这一层不会被询问了。) 3.线段树的总的节点数 但实际上我们做线段树,开数组时,仅仅开两倍*n是不够的(这里指的是线段树的堆式储存)。 然后用“构造法” ...
分类:
编程语言 时间:
2016-08-17 20:56:17
阅读次数:
181
学习线段树的第三天。。。真的是没学点啥好的,又是一道水题,纯模板,我个人觉得我的线段树模板还是不错的(毕竟我第一天相当于啥都没学。。。找了一整天模板,对比了好几个,终于找到了自己喜欢的类型),中文题目嘛,直接上代码 我感觉我的代码有一个特点吧...有点啰嗦,但是每一行的思维和上一行紧密相连,新手看的 ...
分类:
其他好文 时间:
2016-08-12 14:54:31
阅读次数:
137
学习线段树第二天,这道题属于第二简单的线段树,第一简单是单点更新,这个属于区间更新。 区间更新就是lazy思想,我来按照自己浅薄的理解谈谈lazy思想: 就是在数据结构中,树形结构可以线性存储(线性表)也可以树状存储(链表) 然后顺序就是存到顺序表了,第i个节点的左孩子节点就是i*2,右孩子节点就是 ...
分类:
其他好文 时间:
2016-08-11 22:28:30
阅读次数:
149