文章分类 -  省选刷题记录 / 字符串

摘要:[NOI2015] 品酒大会 重要性质 根据题意,如果两个字符串是r相似的,那么他们也是1相似,2相似...r-1相似的 也就是说,我们可以从大到小的考虑限制,预处理出两个后缀的最长前缀,先处理r相似的情况,再处理r-1相似的情况,再处理r-2相似的... 要求后缀的最长前缀,我们就可以联想到SA的 阅读全文
posted @ 2024-12-19 21:49 flyfreemrn 阅读(22) 评论(0) 推荐(0)
摘要:前置芝士:基数排序 算法简介 后缀数组可以将一个字符串的后缀按照字典序排序(啊对,就这么多 实现 定义数组sa,rk \(sa_i\)表示排名为i的后缀的起点 \(rk_i\)表示以i为起点的后缀排名 显然,rk数组于sa数组是互逆的,即\(sa_{rk_i}=i\) 后缀数组的主要部分就是在求解s 阅读全文
posted @ 2024-12-19 21:25 flyfreemrn 阅读(50) 评论(0) 推荐(0)
摘要:前置知识点:KMP算法,[Trie字典树(暂时没做] 模板题: 弱化版1 弱化版2 模板 算法简介 区别于KMP算法,AC自动机应用于多模式字符串匹配,即同时对一个匹配串匹配多个模式串 考虑暴力匹配 类比于我们推到kmp的过程,我们先考虑最暴力的情况 假如我们对模式串建立一棵Trie树,可以做到O( 阅读全文
posted @ 2024-12-11 22:18 flyfreemrn 阅读(47) 评论(0) 推荐(0)
摘要:KMP模板 KMP算法简介 KMP是一种支持单模式匹配的字符串匹配算法(说人话:匹配一个字符串是否在另一个字符串中出现 暴力解法 我们可以考虑O(n^2)的暴力算法 假如我们要在字符串a中匹配字符串b 枚举a字符串的每一个字符后|b|个字符,O(|b|)的时间复杂度判断是否与b重合 考虑优化 为什么 阅读全文
posted @ 2024-12-11 21:43 flyfreemrn 阅读(25) 评论(0) 推荐(0)