随笔分类 -  数据结构-线段树

摘要:"题目链接" 之前用线段树写了一遍,现在用$ddp$再写一遍。 cpp include define lc (now b ? a : b; } const int INF = 2147483647 2; const int MAXN = 50010; inline int read(){ int s 阅读全文
posted @ 2019-07-23 22:00 Qihoo360 阅读(211) 评论(1) 推荐(0)
摘要:"题目链接" 用权值线段树维护每个字母在$[l,r]$出现的次数,每次修改把每个字母在区间的出现次数记下来,然后清空这段区间,再按顺序插进去就好了。 时间复杂度$O(n\log n 26)$ (好久没写正常的维护和的线段树了,这次还要打清零的标记,能一遍写过,好开森) cpp include inc 阅读全文
posted @ 2018-10-13 20:54 Qihoo360 阅读(266) 评论(0) 推荐(0)
摘要:"题目链接" 树剖练手题,想复习下树剖。 第一次提交$T$成~~QQC~~ "看我" ??? 看了数据范围的确挺恶心的,我的复杂度是$O(Mlog^2N)$的,数据范围有三段 很极限就对了。难道是我常数太大了?那也不至于只对$3$个点吧。 我看了一下,原来我求$size$的时候没有加上子树的$siz 阅读全文
posted @ 2018-10-11 11:46 Qihoo360 阅读(188) 评论(0) 推荐(0)
摘要:"题目链接" emmm看起来好像无从下手, $l_i,r_i$这么大,肯定是要离散化的。 然后我们是选$m$个区间,我们先对这些区间按长度排个序也不影响。 排序后,设我们取的$m$个区间 的编号 是$b_1,b_2,...,b_m$, 若$b_m$确定,我们肯定是要尽量使$b_1,b_2,...,b 阅读全文
posted @ 2018-10-03 10:28 Qihoo360 阅读(158) 评论(0) 推荐(0)
摘要:"题目链接" 这题我很久之前用分块写过,没写出来。。 今天又看到了,于是下决心把这题做出来。 这次我用线段树写的,直接对每本书的编号Hash一下然后离散化然后各建一棵线段树,维护当前编号在某个位置有没有书,就行了。 为了卡空间,我用了$vector$,同时指针建树,结构体里不保存当前节点维护的区间, 阅读全文
posted @ 2018-08-23 10:46 Qihoo360 阅读(238) 评论(0) 推荐(0)

You're powerful!