
字符串-trie树
Endless_Way
这个作者很懒,什么都没留下…
展开
-
POJ 1816 Wild Words
对所有模式串建trie树, 对每一个字符串在trie树上进行DFS统计答案, 注意’*’可以包含任意多的字符,也不包含任何字符!trie树好久没写,写不熟了。写的时候借鉴了一下各路神犇的代码^_^#include<cstdio>#include<vector>#include<cstring>#define MAXN 100010#define MAXM 110using namesp原创 2016-07-31 14:15:19 · 611 阅读 · 0 评论 -
UOJ 13 [UER #1]跳蚤OS
trie树。在trie上建每一条路径的字符串。节点加一个go指针,如果go不为NULL则说明他是快捷方式,并且go指向它指向的文件夹。然后找一找,连一连,就好了。其实我觉得如果对于每个文件夹,把名字哈希之后视为一个节点,依然可做。但是太懒不想打哈希。#include<cstdio>#include<cstring>using namespace std;char s[500005], t[50原创 2016-08-30 17:48:38 · 382 阅读 · 0 评论 -
BZOJ 3689 异或之
TRIE树+堆如果只求最小的,我们可以建出TRIE树,对每一个数都跑一边求第二小(最小的是自己异或自己),这样一定包含了所有数的异或最小值,然后找最小的即可。如果还需要求第二小,在排除第一小的情况下,我们把组成第一小的那个数在TRIE树上求一个第三小,这样同样依然包含了所有数的当前异或最小值,以此类推,堆维护即可。注意a^b = b^a,也就是说一个值会出现两次,所以k应取k*2#include<c原创 2016-10-22 10:11:36 · 319 阅读 · 0 评论