
kmp
橘子很酸
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Codeforces Beta Round #8 A. Train and Peter(kmp)
A. Train and Peter time limit per test1 second memory limit per test64 megabytes inputstandard input outputstandard output Peter likes to travel by train. He likes it so much that on the train he...原创 2018-08-09 19:17:31 · 344 阅读 · 0 评论 -
Codeforces Round #344 (Div. 2) D. Messenger (kmp)
题目 http://codeforces.com/contest/631/problem/D 题意 给你一个压缩的主串和一个压缩的模式串,压缩方式为分块压缩,相同且相邻的字母压缩到一个块里,用x-c表示(x表示个数,c表示字母)。问模式串在主串中出现了多少次。 思路 和普通的kmp差不多,把每个x-c当成一个字母,再用kmp进行匹配。 和普通字符串的匹配不同的是:如果模式串两边的块要比...原创 2018-08-09 19:26:24 · 188 阅读 · 0 评论 -
HDU - 3746 (kmp+最小循环节)
题目链接 http://acm.hdu.edu.cn/showproblem.php?pid=3746 题意 给你一个字符串,问你要使得这个字符串的最小循环节出现次数大于等于2,需要在前面或者后面添加多少字符。 思路 先用kmp求出最小循环节的长度,如果不能整除字符串长度,则余数就是需要添加的字符,如果能够整除,特判一下最小循环节出现次数为1的情况就好。 代码 #include&...原创 2018-08-10 20:45:16 · 230 阅读 · 0 评论 -
HDU - 1358 (kmp+最小循环节)
题目链接 http://acm.hdu.edu.cn/showproblem.php?pid=1358 题意 给你一个字符串,求出每个前缀的最小循环节出现次数大于2的位置和次数。 思路 kmp 代码 #include<iostream> #include<stdlib.h> #include<stdio.h> #include<cmath...原创 2018-08-10 21:02:20 · 231 阅读 · 0 评论 -
POJ - 2752 (扩展kmp)
题目链接 http://poj.org/problem?id=2752 题意 给你一个字符串,对于它的每一个前缀,如果同时是它的后缀的话,那么输出这个前缀的位置。 思路 扩展kmp求一下next数组,然后扫一遍每个位置,如果这个位置的next值(也就是这个位置的后缀和前缀的最大匹配长度)是等于后缀长度的话,也就是说这个位置的后缀同时也是它的前缀的话,那么这个位置就是一个答案。 代码 ...原创 2018-08-10 21:08:38 · 261 阅读 · 0 评论 -
POJ - 3080 Blue Jeans(暴力kmp)
题目链接 http://poj.org/problem?id=3080 题意 给你很多字符串,求出最长的相同子串。 思路 暴力找出第一个字符串的每一个子串,然后对剩余的每个字符串kmp一遍,看看是不是存在第一个字符串的子串,找出最长的那个就好了。 代码 #include<iostream> #include<stdlib.h> #include<st...原创 2018-08-10 21:12:13 · 217 阅读 · 0 评论 -
HDU - 3336 Count the string(扩展kmp)
题目链接 http://acm.hdu.edu.cn/showproblem.php?pid=3336 题意 给你一个字符串,求它的每一个前缀出现的次数。 思路 先扩展kmp得到next数组,该字符串的每一个后缀的next值的和就是答案。 因为对于一个后缀,它的next值表示的是它和该字符串的前缀的最大匹配长度,比如说如果next[i]为3,后缀为abcd,这个时候字符串的a,ab,a...原创 2018-08-10 21:20:35 · 317 阅读 · 0 评论 -
HDU - 2328 Corporate Identity(kmp)
题目链接 http://acm.hdu.edu.cn/showproblem.php?pid=2328 题意 同 poj3080 https://blog.youkuaiyun.com/a670531899/article/details/81570063 思路 直接暴力,不过(200^3)*4000居然都能过?好神奇的数据。 代码 #include<iostream> #i...原创 2018-08-10 21:32:02 · 190 阅读 · 0 评论