——字典树
FeBr2
(๑•̀ㅂ•́)و✧
展开
-
字典树(+DFS)——Watto and Mechanism ( CodeForces 514C )
题目链接: http://codeforces.com/contest/514/problem/C 分析: 题目是先给出n个字符串和m个字符串,对于m个字符串中每一个字符串都可以在n个字符串中找到一个与之匹配(允许由一位字符的差异,但不允许超出或少于)。一看题目,就能想到是用n 个字符串建树,然后再搜索。 题解: 比较难写的是这个DFS函数,先讨论字符串有没有到底,到底后无错误并且之后没有节点原创 2016-07-17 11:00:37 · 694 阅读 · 1 评论 -
字典树——统计难题 ( HDU 1251 )
字典树:定义: 字典树(Trie树)是一种树形数据结构,其作用是存储多个字符串,并可以自动按照字典序排好。该算法的时间复杂度为O(n),空间复杂度为O(nk),其中n为所有字符串的和,k为所有可能出现的字符的个数。 实现方法: 树上的每个节点代表了一个字符串,每个节点最多有k个孩子,第k个孩子代表的字符串为原结点的字符串后接上第k个字符构成。 Node结点代码: struct node {原创 2016-07-15 16:40:10 · 590 阅读 · 0 评论 -
字典树(需要删除操作)——DNA Prefix ( LOJ 1224 )
题目链接: http://www.lightoj.com/volume_showproblem.php?problem=1224 分析: 一开始以为是一道非常裸的字典树,只不过加了个前缀×节点值,后来内存超了几次,才发觉每次需要删除字典树。 关键步骤:删除字典树代码: void delete_tree(node * root) { //递归删除 for(int i=0; i<k;原创 2016-07-15 18:48:24 · 565 阅读 · 0 评论 -
Booklist——ACM-ICPC国际大学生程序设计竞赛北京赛区(2016)网络赛 A
题目链接: https://hihocoder.com/problemset/problem/1383 分析: 给出很多行字符串,数量未知,最后一行为单个的0,结束一次样例。每一行字符串由 斜杠,空格,大写字母,数字组成。斜杠之前的字符串为目录,最后一个斜杠后的字符串为书名。要求把书名和字符串按字典序分别输出,目录在书名前。输入格式看题目样例。 题解: 比赛时被坑死了,强行WA啊。。。 首先原创 2016-09-25 23:45:42 · 981 阅读 · 0 评论 -
Trie(位运算)—— 计蒜客 XOR Queries
题目链接:https://nanti.jisuanke.com/t/15430 题意:见链接 分析:对于位运算,我们可用使用字典树来搞一搞。此题中,我们可以把区间查询 [L,R][L,R] 拆分成 [1,L−1][1, L-1] 和 [1,R][1,R] 然后离线所有查询,扫一遍,最后做差即可。 AC代码: /*********************************************原创 2017-05-19 21:07:48 · 732 阅读 · 0 评论