08 2020 档案

摘要:对于一些形如询问\sum_ ^ n a_i \times p_i = k的整数解或者有解的情况时,常常使用同余最短路的解法。 我们令disi记录凑出modbase余i最小的数是多少 然后可以用\text的方法转移 \(f((x + y) \bmod base) = f(x 阅读全文
posted @ 2020-08-29 20:14 Hock 阅读(168) 评论(0) 推荐(0) 编辑
摘要:重要结论 本质不同的节点数 = pam上的节点数 - 2 对于一个字符串|s|,它的本质不同回文子串个数最多只有|s|个 阅读全文
posted @ 2020-08-25 21:16 Hock 阅读(82) 评论(0) 推荐(0) 编辑
摘要:s 阅读全文
posted @ 2020-08-25 21:15 Hock 阅读(134) 评论(0) 推荐(0) 编辑
摘要:s 阅读全文
posted @ 2020-08-25 21:13 Hock 阅读(117) 评论(0) 推荐(0) 编辑
摘要:概念 虚树,是对于一棵给定节点数n的树T,构造一棵新的树T′\(使得节点总数最小且包含指定的某几个节点和它们的\)\text 利用虚树,可以对于指定多组点集S的询问进行每组Θ(|S|logn+f(|S|))的回答,其中f(x)指的是对于树上x个点的情况下单组询问 阅读全文
posted @ 2020-08-24 21:29 Hock 阅读(234) 评论(0) 推荐(0) 编辑
摘要:易错集合 lstcnt初始化为1 空间要开两倍。 新建虚拟节点的时候,不要忘记\text ###在进行统计的时候,不要忘记了有虚拟节点,就是从x中分离出y的节点,他是没有sz的,需要重点考虑。 阅读全文
posted @ 2020-08-24 14:10 Hock 阅读(199) 评论(0) 推荐(0) 编辑
摘要:先说一个比较巧的技巧 如果(x,y)之间有一条权值为val边,我们可以直接link(i+n,x)link(y,i+n) wi+n =val 易错点 打rev标记的时候,如果维护了端点的信息不要忘记交换。 阅读全文
posted @ 2020-08-16 00:22 Hock 阅读(199) 评论(0) 推荐(0) 编辑
摘要:提高组综合训练1 一个数的平方的最后n位只与原数的最后n位有关 \text\text{exgcd(a, b, x, y)}ax+by=gcd(a,b)\text = 0\text{ax+by=a}\text\text != 0 阅读全文
posted @ 2020-08-13 13:18 Hock 阅读(131) 评论(0) 推荐(0) 编辑
摘要:A 题意 求不可重叠的最长重复字符串 题解 建立SA,那么最长的重复字符串一定满足 sai+LCP(i,j)saj 用二分来枚举最长重复字符串的长度mid,那么对应一个区间[l,r] 只要满足min(heighti)mid并且存在$sa_ 阅读全文
posted @ 2020-08-10 09:32 Hock 阅读(107) 评论(0) 推荐(0) 编辑
摘要:后缀排序 sai 表示后缀排名为i的位置。 rki 表示以i为首的后缀在所有后缀的排名。 LCP(i,j)表示saisaj的最长前缀的长度 heighti=LCP(i1,i) \(LCP(i,i) = len(sa[i]) = n - 阅读全文
posted @ 2020-08-09 20:42 Hock 阅读(314) 评论(0) 推荐(0) 编辑
摘要:基本信息维护 struct Splay { int sz, fa, val, cnt, ch[2]; //sz 表示子树大小 //ch[0 / 1]表示左右两个儿子 //fa 表示父亲 //cnt 表示该点的值出现了几次 //val 节点的值 } t[N]; #define ls(p) (t[p]. 阅读全文
posted @ 2020-08-04 23:41 Hock 阅读(239) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示