
字符串
文章平均质量分 69
nooooteY
这个作者很懒,什么都没留下…
展开
-
HDU 2203 亲和串
链接:http://acm.hdu.edu.cn/showproblem.php?pid=2203分析:把s1拼接的本串的串尾,进行kmp即可。(字符串处理函数要熟练使用啊。。。)以下给出两种解法。 Source Code:(KMP):#include#include#define maxn 100010int next[maxn];char s1[maxn],s2[原创 2013-05-03 10:07:19 · 766 阅读 · 0 评论 -
HDU 3374 String Problem
链接:http://acm.hdu.edu.cn/showproblem.php?pid=3374题意:一个长度为L的字符串,经过循环左移可以得到编号为1,2...L个字符串。问这L个字符串中字典序最大和最小的编号以及它们出现的次数。分析:KMP+最小最大表示。如果这个字符串有循环节且循环节长度为T,那么字符串每循环左移T个字符得到的字符串和原串就相同。因此可以用KMP的next[]数组求原创 2013-05-10 11:17:20 · 737 阅读 · 0 评论 -
HDU 4286 Data Handler [栈,双端队列]
转自:http://www.haogongju.net/art/1647260这题比较容易想到的做法是splay,但是splay写起来比较麻烦而且每次操作都有LogN的复杂度,双向链表也是可以实现的,但实践起来比较麻烦,尤其是翻转操作。。。 可以发现每次L或者R都是移动一位的,我们可以用更简单的数据结构来实现,用两个栈分别存L左边和R右边的数据,L和R中间的数据使用一个双端队原创 2013-08-02 14:12:44 · 964 阅读 · 0 评论 -
POJ 1002 487-3279
题目链接:http://poj.org/problem?id=1002题意:给出一串由大写字母,数字,中划线组成的字符串。其中每个大写字母对应一个数字,让你求出这串字母对应的数字串(即电话号码),要求输出的数字串的第三位与第四位中间加一个中划线。分析:用map将字母转换成数字,将整个字符串转换成一个整数,注意这个整数有可能不是七位的(有前导0),所以在输出的时候注意一下。字符串用s原创 2013-08-03 11:06:14 · 861 阅读 · 0 评论 -
ZOJ 3490 String Successor
题意:给出一串可见字符和一个整数N,每次对这串字符的最右边的某个字符+1,且这个字符必须是数字或大小写字母。如果这个字符+1后超过了这个字符的范围就向右产生一个进位,而这个字符变为字符范围的最小字符,即若字符为9,+1后变为0,然后产生进位传给左边的字母或数字符号,依次下去,如果有必要要在字符的最左边插入一个字符。(题目叙述挺搓的。)分析:递归模拟。Code:#incl原创 2013-08-01 21:41:51 · 971 阅读 · 0 评论 -
【理解字符串循环同构的最小表示法】
转自:http://blog.youkuaiyun.com/cclsoft/article/details/5467743 循环字符串的最小表示法的问题可以这样描述:对于一个字符串S,求S的循环的同构字符串S’中字典序最小的一个。由于语言能力有限,还是用实际例子来解释比较容易:设S=bcad,且S’是S的循环同构的串。S’可以是bcad或者cadb,adbc,dbca。而且最小表示的S’是转载 2013-05-10 11:19:34 · 1002 阅读 · 0 评论 -
POJ 3080 POJ 3450 KMP
链接:http://poj.org/problem?id=3080题意:给出m个字符串,找出其中最长的公共子串,如果答案有多个,输出字典序最小的子串。分析:枚举第一个字符串的子串,然后和其他字符串进行匹配。此题也可用strstr()函数水过,而且貌似比KMP还快? Source Code:#include#include#includeusing namespace st原创 2013-05-08 10:25:16 · 762 阅读 · 0 评论 -
POJ 3461 Oulipo
链接:http://poj.org/problem?id=3461 题意:求模式串在主串中匹配的次数。(题目太啰嗦,直接看输入输出示例...) 分析:KMP的简单转化。 Source Code:#include#include#define maxn 1000000int next[maxn],len1,len2,cas;char s[maxn],t[maxn原创 2013-05-07 18:50:55 · 899 阅读 · 0 评论 -
poj 2185 Milking Grid KMP
转自:http://blog.sina.com.cn/s/blog_69c3f0410100tyjl.html题意:在字符矩阵中找出一个最小子矩阵,使其多次复制所得的矩阵包含原矩阵。在网上找到了好多代码都是能通过部分数据,他们的代码和误点给我以提示。思路:支持他们的观点:最小重复矩阵一定靠左上角。第一步也是找最小重复子矩阵的宽,网上的大部分代码就卡在这里,如实例(poj讨论数据原创 2013-05-07 20:38:51 · 830 阅读 · 0 评论 -
POJ 2752 Seek the Name, Seek the Fame
链接:http://poj.org/problem?id=2752题意:一个字符串,求所有相同的前缀后缀长度,并从小到大输出。分析:KMP的next[]数组应用。 Source Code:#include#include#define maxn 1000010char s[maxn];int next[maxn],ans[maxn],len;void GetNex原创 2013-05-06 23:15:27 · 722 阅读 · 0 评论 -
POJ 2406 Power Strings
链接:http://poj.org/problem?id=2406题意:a是一个字符串,记s=a^n为a重复n次所形成的字符串。比如说a是abcd,那么当n=3时,a^3就是abcdabcdabcd。现在给出字符串s,求出最大的重复次数n。对于KMP的next[]数组的一些理解参考这里:1.http://www.cnblogs.com/wuyiqi/archive/2012/01/06/2原创 2013-05-06 22:51:53 · 766 阅读 · 0 评论 -
CodeForces 23A You're Given a String...
DescriptionYou're given a string of lower-case Latin letters. Your task is to find the length of its longest substring that can be met in the string at least twice. These occurrences can overlap (原创 2013-08-29 13:17:07 · 938 阅读 · 0 评论