ACM-字符串哈希
字符串哈希
luyehao1
ACMer
展开
-
字符串哈希(详解+模版)
参考博客:详解1详解2详解3个人理解:字符串Hash的种类还是有很多种的,不过在ACM中一般只会用到一种名为“BKDR Hash”的字符串Hash算法。它的主要思路是选取恰当的进制,可以把字符串中的字符看成一个大数字中的每一位数字。关于进制的选择实际上非常自由,大于所有字符对应的数字的最大值即可,比如一个字符集是a到z的题目,选择27、233、19260817都是可以的。一般使...原创 2018-12-09 19:17:32 · 2439 阅读 · 1 评论 -
tokitsukaze and Similar String(字符串哈希)
题目链接:tokitsukaze and Similar String 题意:tokitsukaze获得了一个长度为n (1≤n≤10^5),由a-z小写字母组成的字符串。我们定义两个字符串是相似的,当且仅当能通过多次以下操作,使得两个字符串相等。并且把需要操作的最小次数,称为两个字符串的相似度。操作是这样的:选择一个字符串,把字符串的每个字母都替换为字母表上的下一个字母...原创 2018-12-09 20:50:56 · 313 阅读 · 0 评论 -
D. Camp Schedule Codeforces Round #545 (Div. 2)(双模数字符串哈希+贪心)
题目链接:D. Camp Schedule题意:给定一个01串s,再给定一个字符串t,现在可以随意交换s中元素顺序,使得交换后的串中含t的数目最多(t作为子串)。输出交换后的串,special judge。思路:贪心思路,求 t 的后缀与前缀匹配的最大长度。固定重合部分,然后重复剩余部分即可。如何求 t 的后缀与前缀匹配的最大长度?一、求kmp的Next数组...原创 2019-03-10 16:35:12 · 481 阅读 · 0 评论 -
Infinite Fraction Path(hdu 6223 ST表 + hash )
题目链接:Infinite Fraction Path题意:给定一个纯数字的字符串,下标从0开始,下标为 i 的那个字符有一条指向下标为(i*i+1)% n 的字符的有向边。现在,从每个点开始走n-1条边,就能得到n个长度为n的字符串,输出其中字典序最大的那个。思路:ST表 + hash:nxt[i][j]:表示下标为 i 的字符后面第(1<<j)个...原创 2019-03-16 11:20:56 · 425 阅读 · 2 评论