
数据结构 主席树
文章平均质量分 79
yuhong_liu
这个作者很懒,什么都没留下…
展开
-
POJ2104-K-th Number-区间第k大-可持久化线段树/主席树
#include #include #include #include #include #include #include #include #include #include using namespace std; const int MAXNN=100005; #define w(i) T[(i)].w #define ls(i) T[(i)].ls #define r转载 2016-04-13 01:36:22 · 486 阅读 · 0 评论 -
求第k大连续区间和/第k大子序列和 - 二分+树状数组+前缀和(或主席树+堆)
给你n,再给你n个数,最后给一个k 求出这个序列的第k大连续区间和; N(1 ai(1 K(1 思路: 预处理前缀和。并将其离散化(去重)。 二分答案,然后每次判断中,遍历前缀和Bi,然后查找有多少个jX,也就是有多少个子序列的和是大于X的,即使求有多少个Bj小于【Bi-X】,这部分查询我们可以用树状数组实现,方法类似于树状数组求逆序对。 查询方法简要说一下,原创 2016-03-19 17:32:10 · 3869 阅读 · 0 评论 -
HDU 4417-树状数组求区间rank查询/主席树区间rank查询
主席树做法: 离散化下标,直接求累计区间里小于等于query_k的个数 ,这题似乎跑得时间都差不多。 #include #include #include #include #include #include #include #include #include #include using namespace std; const int MAXNN=100005;原创 2016-07-30 02:20:03 · 369 阅读 · 0 评论 -
Codeforces Round #368-D. Persistent Bookcase-(离线建树+暴力xjb搞)/(主席树在线乱搞)
http://codeforces.com/contest/707/problem/D 维护一个n*m的矩阵 题意就是4个操作,操作1,给a[i][j]置1 操作2,置零 操作3,第i行取反 操作4,回到做了k步之后的状态 把询问离线,按顺序建树,按照dfs序跑一遍就得到答案了】 例如操作i和i+1都是 非4的操作 那么i+1的父亲就是i咯, 如果原创 2016-08-20 23:28:42 · 742 阅读 · 0 评论 -
hdu-4348-To the moon-离线处理 or 主席树区间更新
题意: ------------------------------------------------------------------------------------------------------------------------- 第一种解法,按离线建树,写起来比较简单: 类似 http://blog.youkuaiyun.com/viphong/article/d原创 2016-08-24 19:59:32 · 583 阅读 · 0 评论