随笔分类 - *字符串---扩展KMP
摘要:Minimum Integer sequence HDU - 3522 题意: 几行代码看了一个多小时!!吐血!! 明天再来补题~ 1 #include <bits/stdc++.h> 2 using namespace std; 3 const int maxn=100010; 4 char s[
阅读全文
摘要:Finding Palindromes POJ - 3376 题意:给n个串,任意两个组合,有n*n种组合,问有多少种是回文串。 Trie树+扩展KMP。。。 我用的LRJ的Trie树模板超内存=_=|| 又用了带指针的那种~ 时隔五个月的一道题,今天终于干掉了=_=|| 1 #include <c
阅读全文
摘要:Revolving Digits HDU - 4333 题意:给一串数字,每次可以把最后一个移到最前面形成一个新的数字,问所有的数字中有多少比原数大、小、相等。 原数字为s,长度为len,那么一共形成len数字。 令t=s+s(连接),接下来利用扩展KMP找到t[i]对应的extend[i],然后去
阅读全文
摘要:A Secret HDU - 6153 题意:给两个串s1,s2,问s2的所有后缀在s1中出现的次数乘以后缀长度的和是多少。 首先将串翻转,然后KMP即可。 通过这个题我也认识到对很多简单的算法理解的不够深刻,学了也就只会耍耍模板,以后要多思考思考。 1 #include <bits/stdc++.
阅读全文
摘要:Best Reward HDU - 3613 题意:每个小写字母对应有一个价值,给一个小写字母组成的串s,现在要把s切割成两段,如果切割后的串是回文串,那么价值就是该段所有字母的价值之和,问总价值最大多少。 将s串反转得到t,分别进行一次扩展KMP,目的是为了判断是否是回文串。 如果s[i]到s[l
阅读全文

浙公网安备 33010602011771号