知识点简单总结——Lyndon分解】的更多相关文章

知识点简单总结--Lyndon分解 Lyndon串 定义:一个字符串的最小后缀就是整个串本身. 等效理解:这个串为其所有循环表示中最小的. Lyndon分解 定义:将字符串分割为 $ s_{1} s_{2} ... s_{k} $ 任意段使得每一段都是Lyndon串且 $ \forall i < j , s_{i} \ge s_{j} $ . 引理一:若 $ u < v $ 且 $ u , v $ 均为Lyndon串,则 $ uv $ 为Lyndon串. 关于证明,它咕了. 引理二:Lyndo…
知识点简单总结--Pollard-Rho算法 MillerRabin算法 用于对较大(int64)范围内的数判定质数. 原理:费马小定理,二次探测定理. 二次探测定理:若 $ p $ 为奇素数且 $ x ^ 2 \equiv1 ( mod \ p ) $ ,则 $ x \equiv \pm1(mod \ p) $ . 选取多个素数 $ p $ 对要判断的数 $ x $ 进行测试: 首先进行费马小定理判断 $ x^{p-1} \equiv 1 (mod \ p) $ ,不是的话返回非. 之后设 $…
Lyndon 分解 样例 样例输入 1 ababa 样例输出 1 2 4 5 样例输入 2 bbababaabaaabaaaab 样例输出 2 1 2 4 6 9 13 18 样例输入 3 azAZ0129 样例输出 3 2 4 8 数据范围与提示 \(1\le |s| \le 2^{20}\) OZY的题解 冷门东西,但是今天考到了,做个记录. 记号 \(s[l : r]\) 表示字符串\(s\) 从第\(l\) 个字符到第\(r\) 个字符的子串(从\(1\) 开始标号),\(|s|\) 表…
Minimum Index 题意 求字符串所有前缀的所有后缀表示中字典序最小的位置集合,最终转换为1112进制表示.比如aab,有三个前缀分别为a,aa,aab.其中a的后缀只有一个a,位置下标1:aa有两个后缀,字典序最小的是a,下标为2:aab有三个后缀,字典序最小的是aab,下标是1.答案为 \(1*(1112)^2+2*(1112)^1+1*(1112)^0\) 字符串长度1e6 分析 在求字符串的最小表示法中,有一个叫做Lyndon分解的求法,Lyndon分解可以使用Duval算法.详…
知识点简单总结--FWT(快速沃尔什变换),FST(快速子集变换) 闲话 博客园的markdown也太傻逼了吧. 快速沃尔什变换 位运算卷积 形如 $ f[ i ] = \sum\limits_{ j \oplus k = i} g[ j ] * h[ k ] $ 的形式的式子. 正常计算是 $ n^{ 2 } $ . 与运算卷积 众所周知有 $ ( i \& j ) == k \longleftrightarrow ( i \& k == k ) \& \& ( j \&…
知识点简单总结--minmax容斥 minmax容斥 好像也有个叫法叫最值反演? 就是这样的一个柿子: \[max(S) = \sum\limits_{ T \subseteq S } min(T) \times (-1)^{|T|-1} \] 用 $ Max $ 来求 $ Min $ 也一样可行. 证明不太难,所以干脆咕了,随便找个证明. 应用 由于期望的线性性,以上公式对于每个元素的期望也是成立的, 可以写作 $ E( max(S) ) = \sum\limits_{T \subseteq…
知识点简单总结--BSGS与EXBSGS BSGS 给出 $ A,B,C,(A,C)=1 $ ,要你求最小的 $ x $ ,使得 $ A^x \equiv B(mod \ C) $ . 在数论题中经常会看见这样的式子,而它的用处确实也不少,例如: 求指标 ...想不到了(被打) 解题思路 众所周知 $ A^{x} \equiv A^{x \ mod \ \phi (C) }(mod \ C) $ 所以考虑暴力枚举就可以. 但是我们显然要考虑一个更快的. 分块就好了. 设块大小 $ m $ ,预处…
XPath是一种用于在XML文档中查找信息的语言,其对HTML也有很好的支持,所以在网络爬虫中可用于解析HTML文档.参考链接. 下图是XPath知识点的简单总结成思维导图:…
html { font-family: sans-serif } body { margin: 0 } article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary { display: block } audio,canvas,progress,video { display: inline-block; vertical-align: baseline } audio:not([co…
零碎知识点: lua:用lua写UI,更新UI,因为lua可直接跨平台解析,不需要编译,方便更新------>热更新. c#反射也可以达到更新,但非常麻烦,切不支持iOS. 在lua中一个人汉字占两个字符,删除的时候需要删两次. 用type()可以获取变量类型. 如果不定义变量类型,默认为全局变量,局部关键字为:local. 判断语句: if xt<=0 then-----------------------------判断条件后加关键字"then" 操作.. elseif…