
字典树&&KMP&&后缀数组
YYyyCCCcccBb
觉得为时已晚的时候,恰恰是最早的时候。
展开
-
qduoj-GZS与古英文字典
题意:中文题思路:构造字典树,注意标注最后终止条件!PS:学弟问我,做了一上午都WA,感觉大一白学了T-T,还好最后现看了看模板调处来了!#include#include#include #include #includeusing namespace std;typedef struct tree{ tree *next[30]; int ove原创 2016-12-31 13:52:11 · 782 阅读 · 0 评论 -
课程设计作业-通讯录(树形状)
#include #include #include #include #include #include using namespace std;const int maxn=105;typedef struct node* point_node;struct node{ string address,tel,name; point_node point_re原创 2017-03-03 09:50:53 · 536 阅读 · 0 评论 -
#1015 : KMP算法 裸kmp
输入第一行一个整数N,表示测试数据组数。接下来的N*2行,每两行表示一个测试数据。在每一个测试数据中,第一行为模式串,由不超过10^4个大写字母组成,第二行为原串,由不超过10^6个大写字母组成。其中N输出对于每一个测试数据,按照它们在输入中出现的顺序输出一行Ans,表示模式串在原串中出现的次数。#include #include #includ原创 2017-05-13 20:03:27 · 234 阅读 · 0 评论 -
#1014 : Trie树
思路:裸字典树#include#include#include #include #includeusing namespace std;typedef struct tree{ tree *next[30]; int over;} tree;char s[205];tree *root;void creat( char str[] ){原创 2017-05-06 20:41:15 · 254 阅读 · 0 评论 -
过路费 FZU - 2082 (树链剖分-点更-区间查)
思路:在最小价值的情况下就是沿着树边一直走下去。套一个入边的板子就ac了#include #include #include #include using namespace std;const int maxn = 100005;int dep[maxn],siz[maxn],fa[maxn],id[maxn],son[maxn],val[maxn],top[maxn];原创 2017-06-04 11:11:10 · 357 阅读 · 0 评论 -
Aladdin and the Return Journey LightOJ - 1348 (树链剖分-点更-区间查-入点)
题意:两个操作,改点的权值和查询路径和裸剖#include #include #include #include using namespace std;const int maxn = 60005;int dep[maxn],siz[maxn],fa[maxn],id[maxn],son[maxn],val[maxn],top[maxn],pre_val原创 2017-06-04 11:55:34 · 277 阅读 · 0 评论 -
HDU 5510 Bazinga(KMP)
题意:对于给你若干个字符串,寻找一个最大的i,使得他之前的串中有一个串不是他的子串思路:对于每个串暴力kmp的话会T,不过如果s1 是s2的子串 在询问s2是否为s3的子串时候就可以不匹配s1与s3,直接匹配s2与s3#include #include #include #include using namespace std;#define next fdas原创 2017-08-30 15:11:07 · 271 阅读 · 0 评论 -
2017校招真题在线编程 异或
思路:将每个数字造成字典树的一条链。每次查询时,如果当前位置上m是0,那么必定可以取a[i]的相反值。如果m在这个位置上是1,那就必须取与a[i]在当前位置上的相反值#include #include #include #include using namespace std;const int N=33;struct node{ node *nxt[2原创 2017-09-21 11:09:06 · 417 阅读 · 0 评论 -
HDU 4825 Xor Sum(01字典树)
题意:找出一个与给你的数字 异或最大的数字思路;建立0.1 字典树,在找的时候找二进制想法的位置#include #include #include #include using namespace std;const int N=33;struct node{ node *nxt[2]; int val; node() {原创 2017-09-20 18:22:40 · 206 阅读 · 0 评论