随笔分类 -  字符串---Hash

Seek the Name, Seek the Fame
摘要:"POJ" 题意:给定若干个长度小于等于$400000$的字符串,在每个字符串中求出既是前缀又是后缀的子串长度. 分析:字符串哈希记录前缀值,然后直接枚举长度,分别表示出前缀和后缀的哈希值,并判断是否相等即可. cpp include include include include include 阅读全文

posted @ 2019-09-28 15:07 PPXppx 阅读(269) 评论(0) 推荐(0)

Power Strings
摘要:"POJ" 题意:给定若干个长度小于等于$1e6$的小写字母字符串,询问每个字符串最多由多少个相同的子串重复连接而成. 分析:字符串哈希记录字符串每一段的值.然后从小到大枚举$n$(设$n$为字符串的长度)的约数,判断每一段约数长度的哈希值是否相等即可. cpp include include in 阅读全文

posted @ 2019-09-28 14:52 PPXppx 阅读(217) 评论(0) 推荐(0)

Oulipo
摘要:"POJ" 题意:多组数据,给定两个只含大写字母的字符串$S1,S2$,求$S1在$S2$中出现了多少次? 分析:字符串哈希模板题,我写了双哈希,好像一个就够了. cpp include include include include include include include include 阅读全文

posted @ 2019-09-28 14:34 PPXppx 阅读(231) 评论(0) 推荐(0)

Necklace
摘要:分析:对于第一问判断只需要倍长其中一个字符串(相当于要断环为链),然后哈希两个字符串,最后$O(N)$扫描是否有一段长度为n的字符串的哈希值相同即可.对于第二问需要用到“字符串的最小表示法”,临时在 "博客" 上学了一下,这个算法也是$O(N)$的. cpp // include include i 阅读全文

posted @ 2019-07-26 07:44 PPXppx 阅读(254) 评论(0) 推荐(0)

Hash(学习笔记)
摘要:写这篇博客仅是为了~~凑齐神龙~~,真想学Hash请另寻高明. 关于哈希Hash,我没有找到什么专门学习它的博客.因为它实在是不太好讲,但实现起来其实是很容易的,它的思想很简单,可是就是不太好阐释,而且它就像离散化一样,一般情况下都用于对数据的预处理. 反正我对Hash的理解就是,当碰到一些很难处理 阅读全文

posted @ 2019-01-29 12:51 PPXppx 阅读(116) 评论(0) 推荐(0)

[POI2012]OKR-A Horrible Poe(hash+线性筛素数)
摘要:"传送门" 题意:给出一个由小写英文字母组成的字符串S,再给出q个询问,每个询问是[L,R]的区间形式,要求回答字符串S在该区间内(所构成的子串)的最短循环节. 分析:首先我们来谈谈循环节有哪些性质?因为简单易懂,就直接列出来了(只列举本题涉及到的): (1)一个字符串的循环节的长度一定是该字符串长 阅读全文

posted @ 2019-01-29 10:31 PPXppx 阅读(111) 评论(0) 推荐(0)