随笔分类 -  字符串算法 -- Trie树

摘要:争取年末冲完 阅读全文
posted @ 2020-12-13 12:12 guapisolo 阅读(79) 评论(0) 推荐(0)
摘要:还有不几天就省选了,一定要稳住心态,倍加努力 2019 3 27 T1 spy (打表) 题目大意:已知$b_{i}=\sum\limits_{i=0}^{n-1} f((i\;or\;j)\;xor\;i)a_{i}$,现在给出$b$数组,让你还原$a$数组。$n\leq 2^{20}$ 打表题. 阅读全文
posted @ 2019-03-28 22:33 guapisolo 阅读(73) 评论(0) 推荐(0)
该文被密码保护。
posted @ 2019-02-26 20:45 guapisolo 阅读(13) 评论(0) 推荐(0)
摘要:题面 先把每个串反着插进$Trie$树 每个节点的子树内,可能有一些节点是某些字符串的开头 每个节点挂一棵权值线段树,记录这些节点对应的原来字符串的编号 查询的时候在线段树上二分即可 为了节省空间,使用线段树合并 阅读全文
posted @ 2019-01-23 14:15 guapisolo 阅读(168) 评论(0) 推荐(0)
摘要:题目大意:给你一个序列,共有$q$个询问,每次询问区间$[L,R]$内最大连续字段异或和,强制在线,$n<=12000,m<=5000$ 有个细节没处理好$WA$了好久..还有一次$ans$没清零 先对序列建出可持久化$01Trie$ 分块预处理出,任意两块所覆盖区域的最大$xor$和,枚举右侧块内 阅读全文
posted @ 2018-11-28 15:38 guapisolo 阅读(224) 评论(0) 推荐(0)
摘要:题目大意:给你一个长方形矩阵,位置$i,j$上的数是$a_{i}\;xor\;b_{j}$,求某个子矩阵内第$K$大的值 最先想的是二分答案然后验证,然而是$O(qnlogmloga_{i})$,不出意外会被卡..看完题解才恍然大悟 $01Trie$是具有二分性质的!因为每个节点最多有2个儿子! 先 阅读全文
posted @ 2018-11-28 13:21 guapisolo 阅读(237) 评论(0) 推荐(0)
摘要:题目大意:给你一个序列,求出第$K$小的两两异或值 先建出来可持久化$01Trie$ 用一个$set$/堆存结构体,存某个异或对$<i,j>$的第二关键字$j$,以及$ai\;xor\;aj$的值,堆中按异或值从小到大排序 每次取出一对$<i,j>$并把它从堆中删除 在$[0,j-1]$的 可持久化 阅读全文
posted @ 2018-11-27 19:41 guapisolo 阅读(186) 评论(0) 推荐(0)
摘要:题目大意:给你一个长度为$n$的序列,让你找出一段子序列,求其中的 次大值 异或 序列里一个数 能得到的最大值 先对序列建出可持久化$Trie$ 按元素的值从小到大遍历,设当前元素的位置是i,找出它左右离它最近第一个比$a_{i}$的位置$l1,r1$,再找出第二个比$a_{i}$大的位置$l2,r 阅读全文
posted @ 2018-11-27 18:30 guapisolo 阅读(280) 评论(0) 推荐(0)
摘要:题目大意:让你维护一个序列,支持在序列末插入一个数,支持询问$[l,r]$区间内选择一个位置$p$,使$xor\sum_{i=p}^{n}a_{i}$最大 可持久化$01Trie$裸题,把 区间异或和 转化为区间端点前缀异或和的异或值 即求$xsum_{n}\;xor\;max(xsum_{i})i 阅读全文
posted @ 2018-11-27 15:56 guapisolo 阅读(231) 评论(0) 推荐(0)
摘要:题目大意:给你一个序列,当$1<=l_{1}<=r_{i}<l_{2}<=r_{2}<=n$,求$a_{l1}^...a_{r1}+a_{l2}^...a_{r2}$的最大值 一直在想怎么用可持久化$Trie$搞这道题,卡了一个半小时,看完题解发现我是$sb$,根本不用可持久化 把 区间异或和 转化 阅读全文
posted @ 2018-11-27 12:59 guapisolo 阅读(184) 评论(0) 推荐(0)
摘要:题目大意:略 这竟然是$thusc$的题... 先把询问里加入的串全拎出来,建出$Trie$树,$Trie$里每个节点都开一个$vector$记录操作标号,再记录操作数量$sum$ 然后瞎**搞搞就行了 又水了一篇博客 upd:数据太水了吧..我原来的代码,query函数里的特判是错的= = 阅读全文
posted @ 2018-11-26 20:42 guapisolo 阅读(205) 评论(0) 推荐(0)
该文被密码保护。
posted @ 2018-11-05 14:35 guapisolo 阅读(14) 评论(0) 推荐(0)
摘要:题目大意:略 由于字符集大,要用map维护Trie树 并不能用AC自动机的Trie图优化,不然内存会炸 所以我用AC自动机暴跳fail水过的 显然根据喵星人建AC自动机是不行的,所以要根据问题建 然而这题有一些很艮的地方: 1.如果一个喵的名和姓都被点到,那他只被点到了一次 2.询问的串可能相同 3 阅读全文
posted @ 2018-09-24 22:49 guapisolo 阅读(180) 评论(0) 推荐(0)