题意:
给定一个字符串,要求维护两种操作:
I:在字符串中插入一个字符;
Q:询问某两个位置开始的LCP;
插入操作
题解:
第一道RKhash题,...
分类:
其他好文 时间:
2015-07-24 20:47:09
阅读次数:
200
题目大意:给定一个字符串,求一个最长的子串,该字串可以分解为两个回文子串
傻逼的我又忘了Manacher怎么写了= = 无奈Hash+二分吧
首先将字符串用分隔符倍增,然后求出以每个点为中心的最长回文半径
然后考虑两个回文串怎么合并成一个
我们发现图中以i为中心的回文串和以j为中心的回文串合并后长度恰好为(j-i)*2
能合并的前提是以两个点为中心的回文串有交点
那么对于每个j...
分类:
其他好文 时间:
2015-02-24 17:30:32
阅读次数:
127
题目大意:初始给出一个字符串,下面有一些操作,可以在一个地方加一个字符,询问从两个地方开始最长的匹配长度。
思路:Splay维护Hash值,询问的时候二分一下就行了。它条件给的比较恶心,注意处理的时候按照他说的做就行了。
CODE:
#define _CRT_SECURE_NO_DEPRECATE
#include
#include
#include
#inclu...
分类:
其他好文 时间:
2015-01-21 15:13:43
阅读次数:
299
题意:
1829: Musical Themes 乐曲主题
Time Limit: 1 Sec Memory Limit: 128 MB
Submit: 42 Solved: 15
[Submit][Status][Web
Board]
Description
我们用N(1
许多作曲家围绕一个重复出现的“主题”来构建乐曲。在我们的乐曲表示法中,“...
分类:
编程语言 时间:
2015-01-04 21:26:13
阅读次数:
204
题目大意:给出一个字符串,求出这是最少由多少个回文串组成的。回文串可以重叠。
思路:将原串中的所有回文串都统计出来,然后变成一些区间,问题就转化成了区间并的问题。
CODE:
#include
#include
#include
#include
#define MAX 400010
#define BASE 1333
#define INF 0x3f3f3f...
分类:
其他好文 时间:
2014-12-13 12:19:36
阅读次数:
200
题目大意:给定一个串,问这个串最少可以由回文串拼接多少次而成(拼接可以重叠)
首先将每两个字符之间插入占位符,然后Hash+二分搞出所有极大回文串(可以用manacher,我不会)
问题转化成了给定一些区间,求最少的能覆盖整个数轴的区间
将所有区间按照某一端点排序 然后上树状数组即可
回头还是去学学manacher吧。。。
#include
#include
#include
#i...
分类:
编程语言 时间:
2014-12-11 15:53:11
阅读次数:
207
http://www.lydsy.com/JudgeOnline/problem.php?id=1014被sb错调哭了QAQ。。。insert那里。。插入到第x个后边。。。我。。。。。。写成了第x个前面。。。。。。。。。。还调了!好!久!QAQ本题神lcp做法。。。。表示只会sa的height的离线...
分类:
Web程序 时间:
2014-12-10 19:37:59
阅读次数:
330
题目大意:求正方形回文子矩阵数量(即左右对称、上下对称的正方形子矩阵)
正解是Manacher……但是Hash+二分是能卡过去的0.0 我太丧病了0.0
首先为了避免边长奇偶性带来的WT要把矩阵扩大二倍 然后样例就变成了这样:
00000000000
04020404040
00000000000
03010404030
00000000000
03050303030
00000...
分类:
其他好文 时间:
2014-11-10 15:34:05
阅读次数:
249
题目大意:给定两个矩阵,求最大公共子正方形边长
首先二分答案 然后Check的时候先把A矩阵的所有边长为x的子正方形存在哈希表里 然后枚举B矩阵的每个子正方形查找
注意二维哈希的时候横竖用的两个BASE不能一样 否则当两个矩阵关于对角线对称的时候会判断为相等
尼玛我的哈希表居然比map慢……不活了
#include
#include
#include
#include
#include
#...
分类:
Web程序 时间:
2014-11-10 13:51:02
阅读次数:
215