题意:这个题目和HDU2457有点类似,都是AC自动机上的状态dp,题意就是给你只含有'A','T','C','G',四个字符的子串和文本串,问你文本串如何排列才可以使得文本串中包含有更多的模式串解题思路:我们知道了 有 num[0] 个 'A', num[1] 个 ‘T’, num[2] 个 ‘C...
分类:
其他好文 时间:
2014-09-16 13:58:50
阅读次数:
184
题意:给你一个文本串,其中模式串有两种模式,可以重复和不可以重复,分别有多少个模式串解题思路:在 Trie 里面多加几维数组来维护 重复和不重复的和,由于不够优美,差点超内存。解题代码: 1 // File Name: temp.cpp 2 // Author: darkdream 3 // ...
分类:
其他好文 时间:
2014-09-16 00:16:29
阅读次数:
274
//暴力,从每一行的开始处开始寻找要查询的字符#include#include#include#includeusing namespace std;char str[100005];int main(){ while(gets(str)){ for(int i=0; str[i...
分类:
其他好文 时间:
2014-09-16 00:12:29
阅读次数:
339
题意:给你只包含‘A’,‘G’,‘T’,‘C’四个字母的n个模板串和1个文本串,问你文本串改变多少个字符就可以使得文本串中没有一个模板串解题思路:我们可以知道 dp[i][j] 为文本串到 第i 个字符 AC自动机状态为j的最少的变换次数(这里为什么要用AC自动机,因为end数组可以记录哪一个状态是...
分类:
其他好文 时间:
2014-09-15 22:44:49
阅读次数:
427
题意:找出模式串在文本串中出线的次数。解题思路:裸AC自动机解题代码: 1 // File Name: temp.cpp 2 // Author: darkdream 3 // Created Time: 2014年09月11日 星期四 15时18分26秒 4 5 #include 6...
分类:
其他好文 时间:
2014-09-15 17:30:29
阅读次数:
292
题意:给你base64编码后的模式串和文本串,让你看编码之前的文本串和分别包含了多少模式串解题思路:主要是编码还有注意分支要开256 ,然后就是裸的AC自动机解题代码: 1 // File Name: temp.cpp 2 // Author: darkdream 3 // Created T...
分类:
其他好文 时间:
2014-09-15 17:25:19
阅读次数:
256
题目大意:给定一些单词和一个字符串,求有多少单词在字符串中出现过
首先我不想吐槽题号。真的不想。真的不想!!别问我为什么说这句话!!不想就是了!!
AC自动机模板题
简单介绍一下AC自动机
首先不要把这东西和自动AC机弄混 自动AC机算法等我们发明之后再加介绍
这东西的实现方法就是把所有单词插入一棵Trie树 然后在Trie树上跑KMP算法
每个节点有一个next指针 和KMP算法...
分类:
其他好文 时间:
2014-09-15 14:21:49
阅读次数:
176
第一部分:跳跃表
本文将总结一种数据结构:跳跃表。前半部分跳跃表性质和操作的介绍直接摘自《让算法的效率跳起来--浅谈“跳跃表”的相关操作及其应用》上海市华东师范大学第二附属中学 魏冉。之后将附上跳跃表的源代码,以及本人对其的了解。难免有错误之处,希望指正,共同进步。谢谢。
跳跃表(Skip List)是1987年才诞生的一种崭新的数据结构,它在进行查找、插入、删除等操作时的期望...
分类:
其他好文 时间:
2014-09-14 23:46:08
阅读次数:
1323
hdu2222:http://acm.hdu.edu.cn/showproblem.php?pid=2222题意:AC自动机模板。题解:一下是别人的模板。 1 #include 2 #include 3 #include 4 #include 5 #include 6 #define cha 26 ...
分类:
其他好文 时间:
2014-09-12 18:47:03
阅读次数:
229