字符串匹配
来源:互联网 发布:可以借钱的软件 编辑:程序博客网 时间:2024/06/05 05:50
字符串匹配
题目描述:
给你两个串A,B,可以得到从A的任意位开始的子串和B匹配的长度。
给定K个询问,对于每个询问给定一个x,求出匹配长度恰为x的位置有多少个。
N,M,K<=200000
输入描述:
第一行三个数 N,M,K,表示A的长度、B的长度和询问数。
第二行为串A。
第三行为串B。
接下来K行,每行1个数X。
输出描述:
对于每个询问输出一个数。
样例输入:
6 2 2
aabcde
ab
0
2
样例输出:
4
1
题解:
好吧又是一道思路题,但是挺有意思,值得思考思考。
阅读题目后,我们发现,与kmp的匹配不同,此题是询问以某一字符为开头的最长匹配长度(n^2查找?不T我咬死你)
思考一下每一个字符对答案的贡献。
我们发现当前匹配的长度,是对当前字符的失配做出1的贡献的(例如:abcdab,后面的b的失配为1,是对匹配到他的前一个字符‘a’时对匹配长度为1做的贡献)那么我们就每次统计匹配的长度,加到cnt[i]里就行了。
但是这仍不是最终的答案,因为每一个答案是由前一个答案推过来的,所以后面的答案一定包含前一个答案,容斥一下输出即可。
代码:
字符串匹配.md
阅读全文
0 0
- 字符串匹配
- 字符串匹配
- 字符串匹配
- 字符串匹配
- 字符串匹配
- 字符串匹配
- 字符串匹配...
- 字符串匹配
- 字符串匹配
- 字符串匹配
- 字符串匹配
- 字符串匹配
- 字符串匹配
- 字符串匹配
- 字符串匹配
- 字符串匹配
- 字符串匹配
- 字符串匹配
- 关于Java 开学第一课
- 2017/9/27 Java笔记
- 图像频域变换(一)
- 【Pytorch】入门Pytorch,初次上手请多指教
- cookie保存用户名和密码
- 字符串匹配
- 【DBSDFZOJ 4430】陶陶摘苹果(DP)
- eclipse ctrl+shift+o 失效
- Django入门-6:视图-HttpResponse对象
- 扩展欧几里得 详解入门
- 盒子模型
- Java Code Review总结记录贴(Update 2017.9.27)
- 爬虫学习3.2 HTTP请求的python实现--Requests
- 项目流程