ACM_字符串
文章平均质量分 50
长颜草
无话可说
展开
-
AC自动机详解
概述介绍Aho-Corasickautomation,该算法在1975年产生于贝尔实验室,是著名的多模匹配算法。要学会AC自动机,我们必须知道字典树,也就是Trie树,又称单词查找树或键树,是一种树形结构,是哈希树的变种。AC自动机一个常见的例子就是给出n个单词,再给出一段包含m个字符的文章,让你找出有多少个单词在文章里出现过。要搞懂AC自动机,先得有字典树Trie和KMP模式匹配算法的基础知识。K原创 2017-08-21 19:48:56 · 2143 阅读 · 0 评论 -
HDU 2222 Keywords Search【AC自动机】
题目链接 题目意思给你几个字符串,接着给你一个文本串,问你文本串中有几个前边所给的字符串。解题思路这就是一道简单的AC自动机的模板题,并没有什么难点。代码部分#include <iostream> #include <stdio.h> #include <stdlib.h> #include <queue> using namespace std;const int allson=26; char原创 2017-08-26 20:04:16 · 191 阅读 · 0 评论 -
HDU 1251 统计难题【字典树】
题目链接 题目意思 统计以某个字符串为前缀的单词数 解题思路 最先看到这道题的时候想的就是字典树。但是这一次用字典树写一直内存超限。。。。 本来就特别讨厌字典树的题。唉。。。。烦死了。 不过后来发现用静态的数组就是过不了。后来发现有人写的博客用的是动态的,我就又改了改。 说起来也算有了解了一下动态的用法。 还有一个比较坑的就是这道题的输入。读到回车结束,换行再输入前...原创 2018-09-10 20:02:56 · 213 阅读 · 0 评论 -
字典树详解
字典树字典树又称为单词查找树,Trie树,是一种树形结构,是哈希树的一种变种。典型应用是用于统计,排序和保存大量的字符串(但不仅限于字符串),所以经常被搜索引擎系统用于文本词频统计。它的优点是:利用字符串的公共前缀来减少查询时间,最大限度地减少无谓的字符串比较,查询效率比哈希树高。如图所示: 性质1、根节点不包含字符,除根节点外的每个节点都只包含一个字符;2、从根节点到某一节点,路径上经过的字符连原创 2017-08-04 09:30:06 · 2694 阅读 · 0 评论 -
HDU 6153 A Secret
题目链接 题目意思给你两个字符串A,B,现在要你求B串的后缀在A串中出现的次数和后缀长度的乘积和为多少。解题思路扩展KMP模板题,将s和t串都逆序以后就变成了求前缀的问题了,扩展KMP求处从i位置开始的最长公共前缀存于数组,最后通过将数组的值不为0的进行一个等差数列和的和就可以了。代码部分#include <iostream> #include <string> #include <string.h原创 2017-08-19 19:47:12 · 1199 阅读 · 0 评论 -
EOJ #3441 唐纳德与子串 (Easy)【KMP】
题目链接 题目意思给你一个文本串,然后给出Q次询问,每次给你两个数a,b和一个模式串,问你在区间【a,b】中有多少个模式串。解题思路简单的KMP算法。代码部分#include <iostream> #include <string.h> #include <stdio.h> #include <algorithm> #include <map> using namespace std; int ne原创 2017-12-09 17:24:00 · 264 阅读 · 0 评论 -
HDU 1686 Oulipo
题目链接 题目意思简单的说就是给你T组测试数据,然后给你两个字符串(只包含大写字母),问你文本串中包含多少个模式串,其中字母可以重叠使用。例如:ABA BABABABA 答案就是3解题思路就是用简单的KMP算法跑一遍就可以求出。代码部分#include <iostream> #include <stdio.h> #include <string.h> #include <cstring> #in原创 2017-12-25 17:44:58 · 234 阅读 · 0 评论 -
HDU 2087 剪花布条
题目链接 题目意思给你一个文本串A,接着给你一个模式串B。问你最多能从文本串中剪出几个模式串。解题思路这就是一道KMP的模板题。我们只要找出文本串中含有的最大的模式串的个数即可。 没啥可说的了,直接看代码吧!代码部分#include <iostream> #include <stdio.h> #include <string.h> #include <cstring> #include <algo原创 2017-12-12 17:49:10 · 203 阅读 · 0 评论 -
网易2018校招 字符串碎片
题目链接 题目意思 解题思路 我们只要计算字符串的碎片有多少个,然后用字符串长度/碎片数量就可得到碎片的平均长度 代码部分 #include <iostream> #include <string.h> #include <stdio.h> #include <cstring> #include <algorithm>...原创 2018-03-28 21:11:13 · 190 阅读 · 0 评论 -
蓝桥杯 回文数字
题目意思 题目意思 给你一个数n,让你求出5位和6位数的和值是n的回文数并输出。 解题思路 跟我们平时做的回文串问题一样,就是将5位到6位数遍历一遍输出其中和值为n的回文数就可以了。 代码部分 #include <iostream> #include <stdio.h> #include <string.h> #include <a...原创 2018-03-26 20:36:33 · 469 阅读 · 0 评论 -
HDU 1020 Encoding
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 45618 Accepted Submission(s): 20167 Problem Description Given a string containing原创 2017-05-04 20:11:55 · 341 阅读 · 0 评论 -
省赛 谍报分析
时间限制: 1 Sec 内存限制: 128 MB 提交: 26 解决: 21 [提交][状态][讨论版] 题目描述 “八一三”淞沪抗战爆发后,***几次准备去上海前线视察和指挥作战。但都因为宁沪之间的铁路和公路遭到了敌军的严密封锁,狂轰滥炸,一直未能成行。 ***特科组织,其主要任务是保卫***的安全,了解和掌握敌方的动向。经过一段时间的监听,谍报组获取了敌方若干份密报,经过分析原创 2017-05-23 19:05:20 · 292 阅读 · 0 评论