String series on BZOJ
最近这个RP 略显背了点 真心是没有最糟 只有更糟 但愿WC别跪出翔 但愿我的指头别在烂下去 但愿明天医院少刮我点RMB 但愿医生下刀子手下留情 ...(靠 要但愿的还真TM多) 至于月考 无念 期末考和会考 还是找一个周复习一下吧 情况大概就这样 不过 我还是硬着头皮把BZ上的字符串的题做了一下 虽然是龟速 总结如下:
AC list:
1717 Milking partterns : 后缀数组裸题 k次重复 height分组+二分 orzLHQ天牛...
2251 外星联络 :依然后缀数组 排完之后 就是一个矩阵 从最后一排向上扫 根据height累加 至于输出 从上到下 然后每排从左到右 没了
2342 双倍回文 :挺有意思的一道题 Manacher预处理回文半径p[i] 然后从左到右枚右边回文串中点 二分查找全串中点 O(NLogN) orzCQX的O(N)单调队列 我是想了半天没想出来
2565 最长双回文串 : 2342的双倍经验 差不多吧 注意奇偶就行
2434 阿狸的打字机 : 好题啊 AC自动机完了 反向fail指针构造fail树 然后再扫一边 用树状数组累和 做了这题才发现AC自动机的用处还可以拓展到其fail树上
1559 密码 : 神题 AC自动机上的DP 还要状压 还要记忆化 还要暴搜输出方案 我果断再DP一遍 这题虐的我死去活来
2258 PKUxxxxx :这题也是双倍经验 或者说是三倍 这种题 可以splay+hash 乱来 当然我们的每次先二分LCP长度
1014 火星人 : 所谓的双倍经验 看上面
2754 喵星球上的点名 :SCOI的题 当年我就是暴力搞了30分 其实正解还是后缀数组 把全部串连在一起 我加的分隔符全是一样的所以就要扫两边 Rapid的分隔符有位置区别 所以只用扫一边 orz 同时 orz用map写AC自动机秒过的钟神
2746 旅行问题 : 这题也非常有意思 正解倒是容易看出来 AC自动机+fail树+离线LCA 当然这样要把人写死的 所以果断orzLYD大神的RK-hash 从这个题 倒是学会了字符串的hash乱搞法
1633 The cow Lexicon : 水题 乱DP就好
2121 字符串游戏 : 集训队的题 本质是DP 但是过程不好想 要先处理出 串L..R 能否消掉 我的程序慢的一B
Left list;
这里还剩了几道 : 2119 : 神题 没想出来 // UPD: 花了一下午,现场学了拓展KMP,然后看了1一小时的代码,终于发现是拓展KMP+类似分治的东西,总算A了,不容易啊 2013\3\ 5
2145 : 神题 不会
1068 && 1090 : SCOI的题 留到放假了来做
其实BZ上还有一些string的好题 但有的是之前做的 就不记下来了 然后 没了 (PS: 代码在BZOJ上 有空再贴过来吧)