随笔分类 - *字符串---哈希
摘要:Flying to the Mars HDU - 1800 题意:求最多有多少个数字相等,数可能很大,30位。 本来直接map就可以,练习一下哈希,先映射成数再用的map。。。 1 #include <cstring> 2 #include <iostream> 3 #include <cstdio
阅读全文
摘要:Crazy Search POJ - 1200 题意:求由nc个字母组成的长串中有多少长度为n的不同子串 将原串看成nc进制的数,分别求出长度为n的串的哈希值之后统计出不同的哈希值数即可。 1 #include <cstring> 2 #include <iostream> 3 #include <
阅读全文
摘要:Matrix Matcher UVA - 11019 题意:给两个二维字符串,问小的在大的里面出现了多少次。 本来看到白书上说ac自动机,搜题解看到有个人用hash写的,就学习了下。。。orz 等下再去敲自动机。。。 1 #include <bits/stdc++.h> 2 using namesp
阅读全文
摘要:Milk Patterns POJ - 3261 题意:问长度为n的串中至少出现k次的子串最长是多长。 二分长度,再判断是否有子串重复k次。 1 #include <iostream> 2 #include <cstdio> 3 #include <cstring> 4 #include <algo
阅读全文
摘要:String HDU - 4821 题意:求长串中存在多少个长度为M*L的子串(是由M个长度为L的子串构成的) 算是第一道哈希题了,看的别人的代码 先求出原串左边起到第i位的哈希值h[i],然后枚举起点,计算出前M段,然后利用滑动窗口右移,因此起点只需从1枚举到L即可 1 #include <bit
阅读全文
摘要:一直拖到现在才学哈希。。。 BKDRhash 31,131,1313,…… String HDU - 4821 题意:求长串中存在多少个长度为M*L的子串(是由M个长度为L的子串构成的) 题解:here Milk Patterns POJ - 3261 题意:问长度为n的串中至少出现k次的子串最长是
阅读全文

浙公网安备 33010602011771号