2016-05-29 BZOJ1500维修数列 这个是货真价实的板题、唯一值得提一嘴的是求和最大的子列需要至少有一个元素,一开始理解错了,以为可以长度为0,然后就GG了一晚上加半个头午。还有这道题只有64M要写个简单的内存管理。用了线段树风格的build和读入优化后能把时间减少一半左右。照例https://github.com/cjsoft... 阅读全文...
2016-05-29 BZOJ1014火星人prefix 可以算是平衡树的半个版题吧。做法是维护节点表示字符串的hash,询问的时候二分长度。可以维护hash是因为BKDR-HASH的计算方法是$$BKDR(s)=\sum_{i=1}^{n}S_ip^{n-i}$$向上合并的时候左面儿子的hash乘上$p^{k+1}$,加上节点权值乘上$p^{k}$... 阅读全文...
2016-05-20 单调队列dp 单调队列优化是利用状态转移时的单调性来对dp进行优化的一种做法,类似于斜率优化。不同之处在于单调队列是将dp转移方程分解成$f(i) + g(j)$两部分,其中$f(i)$只与$i, j$中的$i$有关,$g(j)$只与$i, j$中的$j$有关。我们看他如何在朴素dp是二维的情况下将复杂度降... 阅读全文...
2016-05-18 斜率优化dp LNWC上其实讲过斜率优化,但是那阵子颓的不行,都没听懂。今天学习了一下DP的斜率优化。斜率优化通常用来优化具有一下性质的DP问题: 将一段序列划分为多段连续区间 DP方程中有形如$A_iB_j$的项。(例如$S_iS_j$) 设从状态$j$转移到状态$i$时$Dp_i = f(j)$,最... 阅读全文...
2016-05-18 lps最长回文子串 得到串a后,拼接出如下串a#rev(a),求出他们的rank和height数组。然后我们对$0\ldots l1-1$扫描,此时需要分两类: 长度为奇数的回文串 长度为偶数的回文串 对于情况①,我们要求以$S_i$为中心的最长回文串(设长度为k),我们求$T_{i + 1}$与$T_{l ... 阅读全文...
2016-05-17 智障数组 mdzz,get_height总是越界,试图访问sa -1的位置,看了之前写的AC代码,发现getsa传入的字符串长度比正常的字符串长度长1。最后想半天,想起来是为了使有效的sa从sa[1]开始,所以我们在字符串后面插入一个比所有元素都要小的元素0。 mdzz药丸... 阅读全文...
2016-05-07 朝圣之旅 本文作者为莱士传媒旗下记者杜皿煮 事情是这样的。我们几个同学在北京比赛,难得有一晚空闲,作为资深膜法师,决定去一趟梦寐以求的华莱士餐厅朝圣。通过某同学的魅族手机自带的地图(服务提供商为高德),我们找到了一家在地图上看来位于北京市中心的华莱士餐厅。打电话给这家餐厅,说八点半就打烊了。看一眼表已... 阅读全文...
2016-05-04 fav.AStarSearching http://blog.jobbole.com/71044/http://blog.csdn.net/v_JULY_v/article/details/6093380... 阅读全文...