数据结构——字典树
邵光亮
要为自己喜欢的事情不留余力
展开
-
2019 icpc 上海 B Prefix Code(字典树)
题意: 给定 N个长度不超过 10 的非空数字字符串。 求这 N 个字符串是否不存在某个字符串是另一个字符串的前缀。输出 Yes/No。 用字典树模板,有两种情况是 加入的时候没有创造新的节点,那么这个字符串就是其他字符串的前缀 如果加入的时候遇到了字符终点,那么就有字符串是当前串的前缀 AC代码: #include <cstdio> #include <vector&...原创 2020-02-16 17:07:07 · 331 阅读 · 0 评论 -
HDU 6096 String(字典树)
Description: Bob has a dictionary with N words in it. Now there is a list of words in which the middle part of the word has continuous letters disappeared. The middle part does not include the first...原创 2019-10-31 21:20:44 · 230 阅读 · 0 评论 -
BZOJ 4260 Codechef REBXOR(01字典树)
题目大意: 给你 n 个数,让你求两个不相交的区间元素异或后的和的最大值。本题中n 的上限是 4*10^5. 首先看下异或的性质,关于异或我们知道: 0^a=a ,a^a=0 。前 i 个数的异或和前 j 个数的异或相异或: pre[i]^pre[j] = a[i+1]^a[i+2]^……^a[j],(i<j)。异或的后缀和类似。 于是我们可以先求出异或的前缀 pre[i]和...原创 2019-10-10 22:20:34 · 170 阅读 · 0 评论 -
HDU5536 Chip Factory(01字典树)
Problem Description John is a manager of a CPU chip factory, the factory produces lots of chips everyday. To manage large amounts of products, every processor has a serial number. More specifically,...原创 2019-10-10 17:41:14 · 194 阅读 · 0 评论 -
01字典树
01字典树主要就是来解决异或求最值的问题,利用字典树的建树方式然后在查询的时候使用贪心的思想求最值。 关于字典树可以参考这篇博客:字典树 01字典树是按位插入和查询的。因为如果一个数,它的高位值较大,那么这个数的值较大。所以我们插入和查询时是从最高位开始进行的。同时可以开val数组来保存每个值。 01字典树和普通的字典树原理类似,只不过把插入字符改成了插入二进制串的每一位(0或1)。 1....原创 2019-10-10 17:12:23 · 600 阅读 · 0 评论 -
HDU4825 Xor Sum (01字典树)
Problem Description Zeus 和 Prometheus 做了一个游戏,Prometheus 给 Zeus 一个集合,集合中包含了N个正整数,随后 Prometheus 将向 Zeus 发起M次询问,每次询问中包含一个正整数 S ,之后 Zeus 需要在集合当中找出一个正整数 K ,使得 K 与 S 的异或结果最大。Prometheus 为了让 Zeus 看到人类的伟大,随即...原创 2019-10-10 17:07:02 · 232 阅读 · 0 评论 -
HDU2027单词数(字典树)
Problem Description lily的好朋友xiaoou333最近很空,他想了一件没有什么意义的事情,就是统计一篇文章里不同单词的总数。下面你的任务是帮助xiaoou333解决这个问题。 Input 有多组数据,每组一行,每组就是一篇小文章。每篇小文章都是由小写字母和空格组成,没有标点符号,遇到#时表示输入结束。 Output 每组只输出一个整数,其单独成行,该...原创 2019-10-09 21:13:29 · 161 阅读 · 0 评论 -
HDU 1251 统计难题 (字典树)
Problem Description Ignatius最近遇到一个难题,老师交给他很多单词(只有小写字母组成,不会有重复的单词出现),现在老师要他统计出以某个字符串为前缀的单词数量(单词本身也是自己的前缀). Input 输入数据的第一部分是一张单词表,每行一个单词,单词的长度不超过10,它们代表的是老师交给Ignatius统计的单词,一个空行代表单词表的结束.第二部分是一连串的提...原创 2019-10-09 18:51:19 · 261 阅读 · 0 评论 -
字典树
字典树(trie),又称前缀树。是查找树的一种。主要用于大量字符串的存储,查找。搜索引擎通常利用字典树完成用户的搜索提示。也可以叫前缀树 Trie又被称为前缀树、字典树,所以当然是一棵树。上面这棵Trie树包含的字符串集合是{in, inn, int, tea, ten, to}。每个节点的编号是我们为了描述方便加上去的。树中的每一条边上都标识有一个字符。这些字符可以是任意一个字符集中的字符...原创 2019-10-09 17:44:42 · 208 阅读 · 0 评论 -
HDU 4099 Revenge of Fibonacci(斐波那契数列+字典树)
Description The well-known Fibonacci sequence is defined as following: F(0) = F(1) = 1 F(n) = F(n - 1) + F(n - 2) (n >= 2) Here we regard n as the index of the Fibonacci number F(n). This...原创 2019-10-08 20:06:00 · 417 阅读 · 0 评论