摘要: 题面 http://uoj.ac/problem/35 题解 后缀数组当然可以 这里用哈希做 首先排序的问题在哪里 在于比较两个后缀的复杂度是O(length)的 但是我们可以通过找LCP来优化比较 我们二分两个串的LCP的长度 然后通过hash值判断是否相同 这样我们可以在$O(\log l)$的 阅读全文
posted @ 2018-08-01 21:58 wawawa8 阅读(153) 评论(0) 推荐(0) 编辑
摘要: 题面 https://www.lydsy.com/JudgeOnline/problem.php?id=3670 题解 先用kmp求出串的next数组 对于一个i来说: 首先找到最大的满足条件的j 然后j是可行的,next[j]也是可行的,next[next[j]]也是可行的,…… 并且可行的只有这 阅读全文
posted @ 2018-08-01 21:04 wawawa8 阅读(139) 评论(0) 推荐(0) 编辑
摘要: 动态规划 笔记 一、本质 动态规划的本质是 状态压缩 (by Scape) 状态压缩只和答案有关的值 所以dp是一个 不断探索问题性质,减少和答案有关的值的个数 二、类似背包的dp 有多少不同的序列 和为$[Math Processing Error]n$ 并且任意两个数$[Math Process 阅读全文
posted @ 2018-08-01 19:16 wawawa8 阅读(314) 评论(0) 推荐(0) 编辑
摘要: 题面 http://poj.org/problem?id=1961 题解 发现一个性质 一个循环的串 假设循环节长度为L 那么我们取其前size-L位,后size-L位,这两个串相同 相对应的,如果一个长度为size的串,我们取前k位,和后k位相同 那么size-k一定是这个串的循环节 所以我们只要 阅读全文
posted @ 2018-08-01 19:05 wawawa8 阅读(121) 评论(0) 推荐(0) 编辑
摘要: 图论 笔记 一、BFS和DFS 小性质:DFS的非树边都是返祖边 BFS只有同层或者相邻层之间才有边 01BFS 边权是0/1的最短路 在队列里先把和起点距离为0的点压进去 然后再压距离为1的点 然后正常BFS 就可以求出起点到所有点的最短路 P1 Travel 我们考虑当前图的边权为b的子图 然后 阅读全文
posted @ 2018-08-01 17:19 wawawa8 阅读(231) 评论(0) 推荐(0) 编辑