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

摘要:争取年末冲完 阅读全文
posted @ 2020-12-13 12:12 guapisolo 阅读(79) 评论(0) 推荐(0)
摘要:P1552 [APIO2012]派遣(线段树合并+二分) 线段树合并板子题,维护子树内薪水为i的忍者有多少个,并记录薪水的和。为了使能被派遣的忍者更多,贪心取子树内尽可能多的便宜忍者,线段树上二分即可 直接线段树合并可能会卡空间,离散化一下 线段树合并的最后一层不能pushup!!!会变成0的,因此 阅读全文
posted @ 2020-12-03 10:50 guapisolo 阅读(112) 评论(0) 推荐(0)
摘要:题面 先把每个串反着插进$Trie$树 每个节点的子树内,可能有一些节点是某些字符串的开头 每个节点挂一棵权值线段树,记录这些节点对应的原来字符串的编号 查询的时候在线段树上二分即可 为了节省空间,使用线段树合并 阅读全文
posted @ 2019-01-23 14:15 guapisolo 阅读(168) 评论(0) 推荐(0)
摘要:题目大意:略 令$ION2017=S,ION2018=T$ 对$S$建$SAM$,每次都把$T$放进去跑,求出结尾是i的前缀串,能匹配上$S$的最长后缀长度为$f_{i}$ 由于$T$必须在$[l,r]$上匹配,设现在能匹配的长度为$len$,在后缀自动机的$x$点,添加一个字符$c$,则$trs[ 阅读全文
posted @ 2018-12-18 16:01 guapisolo 阅读(499) 评论(0) 推荐(0)
摘要:题目大意: 懒得概括了 神题,搞了2个半晚上,还认为自己的是对的...一直调不过,最后终于在jdr神犇的帮助下过了这道题 线段树合并该是这道题最好理解且最好写的做法了,貌似主席树也行?但线段树合并这个算法实在是太优美了 一个模式串从左到右为开头进行匹配,如果在前面已经匹配成功了,后面就算能匹配成功也 阅读全文
posted @ 2018-12-13 19:55 guapisolo 阅读(452) 评论(0) 推荐(0)
摘要:题目大意:给你一棵树,树上一共n个节点,共m次操作,每次操作给一条链上的所有节点分配一个权值,求所有节点被分配到所有的权值里,出现次数最多的权值是多少,如果出现次数相同就输出最小的。 (我辣鸡bzoj的权限号,洛谷上P4556也有这道题) 线段树合并入门题 也是比较常规的树上链的点差分 每次操作都在 阅读全文
posted @ 2018-09-24 22:26 guapisolo 阅读(215) 评论(0) 推荐(0)