博客园 首页 私信博主 显示目录 隐藏目录 管理 动画

随笔分类 -  高级数据结构——Trie 可持久化Trie

摘要:维护一棵树,有两种操作: 1.Add x,y,插入一个节点,父节点为x边权为y。 2.Query x,y,查询起点为x,终点在y的子树中的最大简单路径边权异或和。 阅读全文
posted @ 2020-10-19 10:10 SovietPower 阅读(110) 评论(0) 推荐(0) 编辑
摘要:上午好困啊啊啊啊啊 阅读全文
posted @ 2019-04-22 12:41 SovietPower 阅读(203) 评论(0) 推荐(0) 编辑
摘要:给定n个串,m次询问,每次询问给定两个串S1,S2,求n个串中有多少个串满足S1是它的前缀且S2是它的后缀。 阅读全文
posted @ 2019-04-16 15:03 SovietPower 阅读(211) 评论(0) 推荐(0) 编辑
摘要:无摘要.. 阅读全文
posted @ 2019-04-08 20:11 SovietPower 阅读(188) 评论(0) 推荐(0) 编辑
摘要:给定一棵n个点的树,每个点是黑色或白色。两个人轮流操作,每次可以选一个白色的点,将它到根节点路径上的所有点染黑。不能操作的人输,求先手是否能赢。如果能,输出第一步选择哪些节点能赢。 n105阅读全文
posted @ 2019-03-18 22:26 SovietPower 阅读(358) 评论(0) 推荐(0) 编辑
摘要:模板题... 阅读全文
posted @ 2019-03-02 19:57 SovietPower 阅读(141) 评论(1) 推荐(0) 编辑
摘要:有一张n个点的完全图,每个点的权值为ai,两个点之间的边权为ai xor aj。求该图的最小生成树。 n2105,0ai<230阅读全文
posted @ 2018-10-09 20:31 SovietPower 阅读(2064) 评论(0) 推荐(0) 编辑
摘要: 强制在线 阅读全文
posted @ 2018-09-28 17:37 SovietPower 阅读(144) 评论(0) 推荐(0) 编辑
摘要:给定初始长度为n的非负整数序列am2种操作: 1. A x:在序列末尾添加一个数x(长度变为n+1) 2. Q l r x:找一个位置p[l,r],使得a[p]a[p+1]...a[n]x最大,输出最大值。 n,m3×105阅读全文
posted @ 2018-09-28 11:28 SovietPower 阅读(153) 评论(0) 推荐(0) 编辑
摘要:给定一棵树,点有点权。Q次询问x,y,z,求xy的简单路径中,与z异或能得到的最大的数是多少。 阅读全文
posted @ 2018-09-28 10:06 SovietPower 阅读(171) 评论(0) 推荐(1) 编辑
摘要:"题目链接" cpp / 异或只有两种情况,可以将序列放到01Tire树上做 在不异或的情况下在Tire上查找序列的mex很容易,从高位到低位 如果0位置上数没有满,则向0递归;否则向1 (0位置上的数都满了 即 其子树叶子节点都有值) 异或情况下 若x在当前位有1,则反转0/1继续走 由于异或具有 阅读全文
posted @ 2018-02-10 16:10 SovietPower 阅读(261) 评论(0) 推荐(0) 编辑
摘要:题目链接 [Update] 这是一个暴力,DP正解见 https://www.luogu.com.cn/blog/fusu2333/solution-p2292 ,同样是利用fail递推,并利用串长只有10,可能匹配位置只有10的性质。 /* 简单的DP,查找是否有字典中的单词时在Trie树上做 要 阅读全文
posted @ 2018-02-09 13:21 SovietPower 阅读(184) 评论(0) 推荐(0) 编辑
摘要:"题目链接" Description 给出n个字符串,问重定义英文字符的顺序(即字典序),有哪些单词可能排在第一 Solution 一个单词想要排在第一,首先是没有其它字符串是它的前缀。那么建一棵Trie树 其次,它字符的优先级要比和它有着相同前缀的要高。 也就是说,对于同一个父节点下,这个 阅读全文
posted @ 2018-02-09 13:20 SovietPower 阅读(236) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示