kmp
我的程序跑快快
这个作者很懒,什么都没留下…
展开
-
HihoCoder - 1015(KMP匹配,模板)
题意:封装了一个可KMP匹配的类结构,比较高效。代码:// HihoCoder - 1015#include <iostream>#include <string>#include <vector>class ModelString {private: std::string s; std::vector<int> dp; //...原创 2019-11-02 13:09:24 · 186 阅读 · 0 评论 -
POJ - 2406 Power Strings解题报告(KMP,字符串划分成若干连续相同子串)
题目大意:好像就是说,好多组测试数据,每组测试数据就是给你一串字符串,然后让你找出一个最短的子串,这个子串满足条件:若干个该子串连接就能组成原字符串。也就是让你想办法把所给字符串划分成尽量短的若干相同子串。原创 2017-05-10 18:49:43 · 690 阅读 · 0 评论 -
POJ - 1961 Period解题报告(kmp next数组巧用)
题目大意:和之前有一篇差不多,就不叙述了,上一篇从策略正确性的证明到kmp代码都写了,可以去看一下。 地址:http://blog.csdn.net/qq_36306833/article/details/71513923原创 2017-05-10 18:53:21 · 284 阅读 · 0 评论 -
POJ - 3080 Blue Jeans解题报告(kmp)
题目大意:给你好几串字符串(最多10串,每串最多60个字符),让你找出他们最长的公共子串。原创 2017-02-16 15:21:21 · 1106 阅读 · 0 评论 -
HDU - 5918 Sequence I解题报告(KMP)
题目大意:给你两个数组 a,b。还有一个间隔长度 t 。现在让你找 a 数组以长度 t 为间隔,里面有多少个 b 。分析:以 t 为间隔将 a 数组分成几个子序列,然后每个子序列分别与 b 进行匹配,用 kmp 。 后经测试发现,这道题直接暴力枚举也是可以过的。两个方法的代码都贴一下吧。代码:暴力枚举:608ms#include<iostream>#include<stdio.h>#inclu原创 2017-05-26 19:33:27 · 315 阅读 · 0 评论 -
POJ - 3461 Oulipo解题报告(KMP)
题目大意:多组测试数据,每组测试数据两个字符串,让你找出一个字符串里有多少另一个字符串。分析:应该就是kmp的魔板题,但是可能是因为我kmp掌握的不好吧,卡了好久好久。 这里一个比较巧妙地思维转换就是,在找到一个模板串之后,ans++,如何寻找下一个,这个事情就可以很巧妙地看成是模板串的最后一个字母之后还有一个假想的与之前任何一个字符串都不同的字符,这个字符当然也不可能和原字符串的任何一个匹配成功原创 2017-05-09 21:40:43 · 346 阅读 · 0 评论 -
HDU - 1711 Number Sequence解题报告(KMP)
题目大意:还是kmp魔板题,给你两串数,从一串中找出另一串,要是存在多个,就输出最先找到的位置。原创 2017-05-09 22:32:55 · 266 阅读 · 0 评论 -
HDU - 2087 剪花布条 结题报告(KMP)
题目大意:题目大意: 中文题,题目背景就不说了,抽象化就是给你两个字符串,问你把第一个字符串切成若干条,能得到多少第二个字符串。原创 2017-05-20 09:13:34 · 259 阅读 · 0 评论