字符串的处理
MarioHo
有请各位多多教导
展开
-
禁止字符串 字符串上的动态规划
/*禁止字符串考虑只由’A’,‘G’,‘C’,'T’四种字符组成的 DNA字符串。给定一个长度为 k的字符串 S。请计算长度恰好为 n且不包含 S的字符串的个数。输出个数 mod 10009后的结果*/题目大意:考虑只由’A’, ‘G’, ‘C’, ‘T’四种字符组成的DNA字符串。给定一个长度为k的字符串s,请计算长度恰好为n且不包含s的字符串的个数,输出个数mod 10009后的结果...原创 2018-09-28 09:28:32 · 243 阅读 · 0 评论 -
字符串匹配----哈希算法(详解)
字符串hash是指将一个字符串s映射为一个,使得该整数可以尽可能唯一的代表也就是唯一标识。换言之,如果两个字符的hash值相同那么我们可以认为两者相同。这里使用的hash策略,便是把一个字符串的每一位赋予权值假设都是大写的英文字母。我们设H[i]代表前i个hash值那么H[i]=H[i−1]∗p+val[i]这里因为是大写英文字母,只有26 中不同的表示,所以这里可以设p为26。(实...原创 2018-09-28 10:11:13 · 7001 阅读 · 1 评论 -
星座-POJ3690-详解
星座给定一个由’*’和’0’组成的,大小为 N x M (N行M列)的匹配对象和 T个大小为 P x Q的匹配模式。 请输出在匹配对象中至少出现过一次的匹配模式的个数。 思路:这里要做的不是字符串匹配,而是二维网络匹配,同样可以运用循环哈希,首先把每一行看成一个字符串,计算从每个位置开始长度为Q的字符串子串的哈希值。然后再把得到的哈希值在列方向看成一个字符串,计算从每一个位置开始长度为P...原创 2018-04-26 15:18:56 · 486 阅读 · 0 评论 -
POJ3581--Sequence(后缀数组)
http://poj.org/problem?id=3581大致题意:给出n个数,把这个数列分为三段,再把三段反转后连接在一起成为一个新串,求字典序最小的新串。大致思路:由于需要翻转,所以在输入时就按照反序输入。比如样例输入是5 10 1 2 3 4。我们从后向前读入就变为5 4 3 2 1 10。对这列数求出后缀数组。在大于2的后最中找到最小的后缀并输出。对于剩下的前缀...原创 2018-09-28 16:39:56 · 276 阅读 · 0 评论