
Trie树
16bit戦争
这个作者很懒,什么都没留下…
展开
-
BZOJ 3439 Kpm的MC密码 Trie+可持久化线段树
题目大意:定义一种串,如果一个串是另一个串的后缀,那么这个串称作kpm串。问一个串的标号第k大的kpm串是多少。 思路:将所有的串翻转之后变成前缀,全都插进一个Trie树中。每个节点维护一个last指针,表示最后一次更新的可持久化线段树的指针,如果再有串经过这里,就继续更新last指针。最后只需要查询last指针中的东西就可以了。 CODE: #include #inc原创 2015-01-15 07:16:44 · 959 阅读 · 0 评论 -
BZOJ 2251 2010Beijing WC 外星联络 后缀数组/Trie树
题目大意给出一个字符串,问这个字符串中出现过1次以上的子串的个数,按照子串的字典序输出。思路由于数据范围过小,这个题有两个解法。 基本的想法就是用后缀数组来进行后缀的排序,之后按照height数组扫就可以了。应该是挺快的。 但是注意到数据范围只有3000,因此我们只需要弄出所有的后缀拿出来建立一颗后缀Trie树就行了。最后DFS一次树种的所有节点。CODESuffixArraySuffixArr原创 2015-04-07 09:42:12 · 1569 阅读 · 0 评论