摘要: @ "TOC" 扩展欧拉定理无需 $a,m$互质。 结论 $b\ge\varphi(m)\text{时},a^b\equiv a^{\left(b\mod\varphi(m)\right)+\varphi(m)}\mod m\quad\quad$ 证明 先取 $m$ 的一个质因数 $p$,令 $m= 阅读全文
posted @ 2019-07-27 22:57 lcyfrog 阅读(130) 评论(0) 推荐(1) 编辑
摘要: @ "TOC" Tarjan 求 LCA 做法 总体思想:遍历每一个结点并使用并查集记录父子关系。 Tarjan 是一种 DFS 的思想。我们需要从根结点去遍历这棵树。 当遍历到某一个结点(称之为 $x$) 时,你有以下几点需要做的。 1. 将当前结点标记为已经访问。 2. 递归遍历所有它的子节点( 阅读全文
posted @ 2019-07-27 22:56 lcyfrog 阅读(88) 评论(0) 推荐(0) 编辑
摘要: @ "TOC" rt,区间左闭右开 注意右端点初值为max+1(右边开区间 小于等于这个数(或刚好满足或差一点满足check) 阅读全文
posted @ 2019-07-27 22:51 lcyfrog 阅读(88) 评论(0) 推荐(0) 编辑
摘要: @ "TOC" 跟$d^i_jk^s_tr^a$一样啦。。。 阅读全文
posted @ 2019-07-27 22:50 lcyfrog 阅读(190) 评论(0) 推荐(0) 编辑
摘要: ~~因为线段树套SA求lcp写炸了,于是跑来学ST表~~ ST表是一种高效的查询静态最值的数据结构,在询问次数多的时候具有优势(O(1)查询) ST表构成:ONlogN建立,O(1)查询 建表: 1. 可以先预处理处log和bin$(1$ 1]+1; } for(int i=1;i 图片引自 htt 阅读全文
posted @ 2019-07-27 22:49 lcyfrog 阅读(102) 评论(0) 推荐(0) 编辑
摘要: 题意: 贝西在玩一款游戏,该游戏只有三个技能键 “A”“B”“C”可用,但这些键可用形成N种(1 当贝西输入的一个字符序列和一个组合技匹配的时候,他将获得1分。特殊的,他输入的一个字符序列有可能同时和若干个组合技匹配,比如N=3时,3种组合技分别为"ABA", "CB", 和"ABACB",若贝西输 阅读全文
posted @ 2019-07-27 22:48 lcyfrog 阅读(124) 评论(0) 推荐(0) 编辑
摘要: @ "TOC" 引入 splay是一种BST,可以维护静态区间k小 也可以当作区间树,维护区间信息( 求和,最大子段和,翻转区间,等等) 时间一般O(nlogn)(均摊),splay操作满足其稳定性 但是常数巨大,接近100,慎用 splay的构建 一个完整的splay包含以下变量: 1. fa:此 阅读全文
posted @ 2019-07-27 22:47 lcyfrog 阅读(185) 评论(0) 推荐(0) 编辑
摘要: @ "TOC" 1、线段树实现方式 总之就是二分区间,分为左右儿子存 空间n 4,时间mlogn 模板: include include using namespace std; const long long maxn=1e6+5; long long a[maxn],d[maxn 1; tag[ 阅读全文
posted @ 2019-07-27 22:46 lcyfrog 阅读(88) 评论(0) 推荐(0) 编辑
摘要: @ "TOC" 个人总结向博客注意。。。 AC自动机_引入 对于k个模式串,我们要匹配一个文本串。 如果采用建立k个next数组的方法( kmp ),时间复杂度显然为O((mi+n) k),不可接受。 那我们就需要一种更简便的数据结构(误),来实现在可控时间范围内(O(n))内的匹配。 除此之外,A 阅读全文
posted @ 2019-07-27 22:34 lcyfrog 阅读(159) 评论(0) 推荐(0) 编辑
摘要: @ "TOC" 1、后缀数组作用 主要用于解决最长公共前缀(lcp)问题,大多数时候此类问题都可以用sam(后缀自动机)来解决。不过应为sa算法相对更加优秀的时空复杂度,在大数据集上可以防止TMLE。 2、后缀数组的构造 1. 首先声明几个变量。 1、 Str :需要处理的字符串(长度为Len) 2 阅读全文
posted @ 2019-07-27 22:32 lcyfrog 阅读(459) 评论(0) 推荐(0) 编辑