Implement strStr(). Returns the index of the first occurrence of needle in haystack, or -1 if needle is not part of haystack. 判断子串needle 在主串haystack中首 ...
分类:
其他好文 时间:
2017-10-26 11:37:55
阅读次数:
200
题意 : 给出 n 个模式串,最后给出一个主串,问你主串打乱重组的情况下,最多能够包含多少个模式串。 分析 : 如果你做过类似 Trie图 || AC自动机 + DP 类似的题目的话,那么这道题相对之前的对于主串的“构造”过程加上了一个限制,那就是字符的元素的有限制的,那么DP的状态就不能用长度来表 ...
分类:
其他好文 时间:
2017-10-12 01:02:24
阅读次数:
207
题意 : 给出 n 个病毒串,最后再给出一个主串,问你最少改变主串中的多少个单词才能使得主串中不包含任何一个病毒串 分析 : 做多了AC自动机的题,就会发现这些题有些都是很套路的题目。在构建 Trie 图的时候给病毒串末尾打上标记,最后定义DP[i][j] = 长度为 i 的串在 j 这个状态节点最 ...
分类:
其他好文 时间:
2017-10-11 23:38:12
阅读次数:
172
题目链接: http://acm.split.hdu.edu.cn/showproblem.php?pid=6208 题意:给你n个串,能不能在这n个串中找到一个串,使得其它所有的串都是这个串的子串。 题解:找到最长的串作为主串,将主串hash一下,然后去匹配其它串即可 代码: 1 #pragma ...
分类:
其他好文 时间:
2017-10-10 20:39:15
阅读次数:
201
字符串操作< 数字,字符串,元组是不可变类型,即操作结果是返回值,源字符串不会改变 myStr = "hello world! Everybody" myStr.find("Eve")得到结果13,即这个子串在主串的起始位置,从左向右查找。 myStr.rfind("Eve") 从右向左查找。 fi ...
分类:
编程语言 时间:
2017-10-04 18:30:06
阅读次数:
227
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1633 题意: 给你一个长度为n的主串a,和一个有m个字符串s[i]的单词书(s[i].size <= 25)。 问你至少删去多少个a中的字符,才能使a成为一个由s[i]组成的排列。 题解: ...
分类:
其他好文 时间:
2017-10-02 16:15:53
阅读次数:
243
题意: 反正就是给出一个T,然后每个T:一个n,一个m,表示主串的数字数量和模式串的数字数量,求第一个匹配的位置。 思路: KMP模板套套就好啦。 参考代码: 1 #include <iostream> 2 #include <vector> 3 #include <map> 4 #include ...
分类:
其他好文 时间:
2017-09-14 21:32:31
阅读次数:
167
http://codeforces.com/problemset/problem/452/E 多个主串的模型。 建立一个广义后缀自动机,可以dp出每个状态的endpos集合大小。同时也维护一个R[]表示那个串出现过。 所以可以算出每个状态的dp[i][k]表示第k个串在第i个状态中出现的次数。 可以 ...
分类:
其他好文 时间:
2017-09-10 10:18:16
阅读次数:
208
题目大意: 给出多个模式串和一个主串,求多少个模式串在主串中出现过。 传送门 这是一道AC自动机的模板题。 在学习AC自动机之前,首先要学习WA自动机、TLE自动机和MLE自动机(雾 AC自动机是一种多模式串匹配算法。 AC自动机概述: *fail指针:指向失配时的匹配节点; 1)构建字典树 2)初 ...
分类:
其他好文 时间:
2017-09-06 14:29:19
阅读次数:
177
字符串的模式匹配是一个比较经典的问题:假设有一个字符串S,称其为主串,然后还有一个字符串T,称其为子串。 现在要做的是,从主串S当中查找子串T的位置,如果存在返回位置值,如果不存在返回-1。另外主串又称为目标串, 子串称为模式串。 暴力匹配算法 这是一个经典的串匹配问题,涉及的算法也比较多,先讨论第 ...
分类:
编程语言 时间:
2017-09-03 23:59:35
阅读次数:
479