摘要: 原文链接www.cnblogs.com/zhouzhendong/p/JunTanFenXi.html 本文概要 1. 引入 2. 简单例子 3. 证明 splay 复杂度 4. 证明 LCT 复杂度 引入 为什么 KMP 不能可持久化,而要用 KMP 自动机来代替? 为什么 splay 不能可持久阅读全文
posted @ 2019-04-12 07:55 -zhouzhendong- 阅读(82) 评论(0) 编辑
摘要: 原文链接www.cnblogs.com/zhouzhendong/p/PAM.html 前置知识 无。 (强行说和KMP有关也是可以的……) 关于回文串的一些性质 1. 一个长度为 n 的字符串最多有 n 个本质不同的回文子串。 2. 对于一个字符串 S,如果在其之后新插入一个字符,那么最多产生一种阅读全文
posted @ 2019-04-01 15:01 -zhouzhendong- 阅读(52) 评论(0) 编辑
摘要: 贺文链接www.cnblogs.com/zhouzhendong/p/STL.html C++ STL 的一些 基础 用法 前言 ​ 创建一个空的 vector ,我一直是这样写的: ​ 直到后来: ​ 在 vector 里创建一个 $0\cdots n 1$ 的数列,我一直是这样写的: ​ 我发现阅读全文
posted @ 2019-03-28 09:34 -zhouzhendong- 阅读(105) 评论(0) 编辑
摘要: 原文链接https://www.cnblogs.com/zhouzhendong/p/Min-25.html 前置技能 埃氏筛法 整除分块(这里有提到) 本文概要 1. 问题模型 2. Min_25 筛 3. 模板题以及模板代码 问题模型 有一个积性函数 $f$ ,对于所有质数 $p$,$f(p)$阅读全文
posted @ 2019-02-26 20:51 -zhouzhendong- 阅读(121) 评论(0) 编辑
该文被密码保护。
posted @ 2019-02-26 14:22 -zhouzhendong- 阅读(14) 评论(0) 编辑
摘要: 原文链接https://www.cnblogs.com/zhouzhendong/p/polynomial.html 下载链接: 多项式基础操作 #include <bits/stdc++.h> using namespace std; typedef long long LL; LL read()阅读全文
posted @ 2018-12-30 14:32 -zhouzhendong- 阅读(172) 评论(4) 编辑
摘要: 原文链接https://www.cnblogs.com/zhouzhendong/p/LCT.html 为什么要写这个总结? 因为之前的总结出问题了…… 下载链接: LCT 入门总结 UPD(2019-03-04): 感谢快乐的小马指出,我给的板子的pushdown里少写了个 if (rev[x])阅读全文
posted @ 2018-12-24 21:01 -zhouzhendong- 阅读(144) 评论(0) 编辑
摘要: 模板整理-For-ACM(ZJUPC2019) (然并卵) 读入优化 - 慢 #define int long long int read(){ int x=0; char ch=getchar(); while (!isdigit(ch)) ch=getchar(); while (isdigit阅读全文
posted @ 2018-07-23 20:00 -zhouzhendong- 阅读(368) 评论(0) 编辑
摘要: 原文链接https://www.cnblogs.com/zhouzhendong/p/Fast-Fourier-Transform.html 多项式 之 快速傅里叶变换(FFT)/数论变换(NTT)/例题与常用套路【入门】 前置技能 对复数以及复平面有一定的了解 对数论要求了解:逆元,原根,中国剩余阅读全文
posted @ 2018-04-14 14:52 -zhouzhendong- 阅读(1476) 评论(5) 编辑
摘要: 原文链接www.cnblogs.com/zhouzhendong/p/CF438E.html 前言 没做过多项式题,来一道入门题试试刀。 题解 设 $a_i$ 表示节点权值和为 $i$ 的二叉树个数,特别的,我们定义 $a_0 = 1$ ,即我们认为没有节点也算一种二叉树。 设 $$g(x) = \阅读全文
posted @ 2019-04-21 14:28 -zhouzhendong- 阅读(5) 评论(0) 编辑
摘要: 原文链接www.cnblogs.com/zhouzhendong/p/UOJ335.html 前言 CLY大爷随手切这种题。 日常被CLY吊打系列。 题解 首先从 pruffer 编码的角度考虑这个问题。 pruffer 编码的长度为 $n-2$ ,如果点 $i$ 在 pruffer 编码中出现了 阅读全文
posted @ 2019-04-19 20:11 -zhouzhendong- 阅读(9) 评论(0) 编辑
摘要: 原文链接www.cnblogs.com/zhouzhendong/p/UOJ73.html 前言 纯属理性愉悦。 题解 Subtask1 发现就是求 $a \times b \mod c $ 。 写个快速乘就好了。 Subtask2 直接打开的话会发现 gedit 卡死了。 用 Subline Te阅读全文
posted @ 2019-04-17 21:11 -zhouzhendong- 阅读(33) 评论(1) 编辑
摘要: 原文链接www.cnblogs.com/zhouzhendong/p/UOJ206.html 题解 T = 1 的情况直接大力从两边向中间询问即可。 T = 2 的情况挺妙的,我没想到。 考虑首先花费 n + 1 代价得到全局最大值和最小值,也就是 a[1] 和 a[n] 。 然后考虑将值域均分为 阅读全文
posted @ 2019-04-15 23:11 -zhouzhendong- 阅读(12) 评论(0) 编辑
摘要: 原文链接www.cnblogs.com/zhouzhendong/p/UOJ129.html 题解 考虑把大于等于 $\sqrt n$ 的质数和小于 $\sqrt n$ 的分开考虑: 1. 小于等于 $\sqrt n$ 的质数最多只有 8 个。 2. 一个小于等于 n 的正整数最多包含 1 个 大于阅读全文
posted @ 2019-04-15 22:20 -zhouzhendong- 阅读(7) 评论(0) 编辑
摘要: 原文链接www.cnblogs.com/zhouzhendong/p/UOJ346.html 题解 首先按照 $m_i$ 的大小排个序。 如果某一个区间和一个 m 值比他小的区间有交,那么显然可以将这个区间控制的区域删除掉重合的那一段。 如果一个区间被删没了,那么显然答案为 0 。 在这个处理之后,阅读全文
posted @ 2019-04-15 12:48 -zhouzhendong- 阅读(20) 评论(2) 编辑
摘要: 原文链接https://www.cnblogs.com/zhouzhendong/p/UOJ345.html 前言 我真的是越来越菜了,连树形DP都感觉陌生了。 题解 首先,我们来看看在不断生长叶子会发生什么。 第一种:顺着生长方向走。 第二种:在某一个节点的某些子树依次生长,达到他们之间互相消耗的阅读全文
posted @ 2019-04-12 23:24 -zhouzhendong- 阅读(13) 评论(0) 编辑
摘要: 原文链接www.cnblogs.com/zhouzhendong/p/JunTanFenXi.html 本文概要 1. 引入 2. 简单例子 3. 证明 splay 复杂度 4. 证明 LCT 复杂度 引入 为什么 KMP 不能可持久化,而要用 KMP 自动机来代替? 为什么 splay 不能可持久阅读全文
posted @ 2019-04-12 07:55 -zhouzhendong- 阅读(82) 评论(0) 编辑
摘要: 原文链接www.cnblogs.com/zhouzhendong/p/UOJ465.html 前言 tmd并查集写挂,调到自闭。 cly和我写挂了同一个地方。 一下救了两个人感觉挺开心。 题解 首先直接写 bfs/记忆化dfs 可以容易地得到一个 $O(m^2)$ ,或者 $O(nm)$ 的做法。常阅读全文
posted @ 2019-04-11 21:38 -zhouzhendong- 阅读(21) 评论(0) 编辑
摘要: 原文链接www.cnblogs.com/zhouzhendong/p/UOJ104.html 题解 首先证明一个结论:对于一种分割方案,分割的顺序不影响最终结果。 证明:对于树 a[x] 和 a[y] ,如果 x 与 y 之间有分割,那么它们对答案的贡献就是 a[x] * a[y] ,否则无贡献。 阅读全文
posted @ 2019-04-10 22:24 -zhouzhendong- 阅读(11) 评论(0) 编辑
摘要: 原文链接www.cnblogs.com/zhouzhendong/p/UOJ416.html 前言 完了完了SB选手Tarjan写挂。 题解 考虑先Tarjan缩个点双建个圆方树。 然后发现,确定起点和终点后,中间点的可选方案数就是 这条路径上的所有点双 size 之和-2 。 定义原点表示原图中的阅读全文
posted @ 2019-04-10 20:54 -zhouzhendong- 阅读(11) 评论(0) 编辑
摘要: 原文链接www.cnblogs.com/zhouzhendong/p/LOJ3048.html 题解 $O(n\log^2 {a_i})$ 的做法比较简单: 1. 求出第 k 大的是什么: 二分答案,在Trie树上统计一下答案。 2. 求出前 k 大的和:已经知道了第 k 大的数值,那么,只要再在 阅读全文
posted @ 2019-04-09 20:07 -zhouzhendong- 阅读(39) 评论(0) 编辑
摘要: 原文链接www.cnblogs.com/zhouzhendong/p/BZOJ3153.html 题解 直接用splay维护虚子树。 细节真多。 暂时还不会证明。 可能是一个log或者两个log。 先咕一咕,等证明它挂了或者证明它是对的或者我弃疗不证明了再更新。 UPD(2019-04-10):弃疗阅读全文
posted @ 2019-04-09 19:42 -zhouzhendong- 阅读(47) 评论(0) 编辑
摘要: 原文链接www.cnblogs.com/zhouzhendong/p/UOJ196.html 题解 先离散化,设离散化后的值域为 $[0,m]$ 。 首先把问题转化一下,变成:对于每一个位置 $i$ ,求出它最终不超过 $j$ 的方案数。 考虑如何求这个东西。 对于一个固定的 $j$ ,考虑一个这样阅读全文
posted @ 2019-04-05 13:45 -zhouzhendong- 阅读(29) 评论(0) 编辑
摘要: 原文链接www.cnblogs.com/zhouzhendong/p/ZJOI2019Day1T2.html 前言 在LOJ交了一下我的代码,发现它比选手机快将近 4 倍。 题解 对于线段树上每一个节点,维护以下信息: 1. 这个点为 1 的概率。 2. 这个点为 0 ,且它有祖先是 1 的概率。 阅读全文
posted @ 2019-04-04 14:33 -zhouzhendong- 阅读(54) 评论(0) 编辑
摘要: 原文链接www.cnblogs.com/zhouzhendong/p/UOJ449.html 题解 设 f(i) 表示给 i 只鸽子喂食使得至少一只鸽子被喂饱的期望次数,先 min-max容斥 一下。($\frac ni$ 表示期望每 $\frac ni$ 步喂这 i 只鸽子一次) $$ans = 阅读全文
posted @ 2019-04-02 22:50 -zhouzhendong- 阅读(19) 评论(0) 编辑
摘要: 原文链接www.cnblogs.com/zhouzhendong/p/PAM.html 前置知识 无。 (强行说和KMP有关也是可以的……) 关于回文串的一些性质 1. 一个长度为 n 的字符串最多有 n 个本质不同的回文子串。 2. 对于一个字符串 S,如果在其之后新插入一个字符,那么最多产生一种阅读全文
posted @ 2019-04-01 15:01 -zhouzhendong- 阅读(52) 评论(0) 编辑
摘要: 原文链接www.cnblogs.com/zhouzhendong/p/UOJ103.html 前言 我终于会PAM啦 感谢CLY大佬手把手教我PAM 题解 建个 PAM。 统计一下每一个节点的 Right 集合大小,设 size[x] 为节点 x 的 right 集合大小。 求出 max(len[x阅读全文
posted @ 2019-04-01 14:27 -zhouzhendong- 阅读(16) 评论(0) 编辑
摘要: 原文链接www.cnblogs.com/zhouzhendong/p/UOJ348.html 前言 第一次知道子集卷积可以自己卷自己。 题解 这是一道子集卷积模板题。 设 $sum[S]$ 表示点集 S 的点权和。 设 $f[S]$ 表示对点集 S 进行州区划分得到的答案,定义 $g[S]$ 在点集阅读全文
posted @ 2019-03-31 21:50 -zhouzhendong- 阅读(39) 评论(0) 编辑
摘要: 贺文链接www.cnblogs.com/zhouzhendong/p/STL.html C++ STL 的一些 基础 用法 前言 ​ 创建一个空的 vector ,我一直是这样写的: ​ 直到后来: ​ 在 vector 里创建一个 $0\cdots n 1$ 的数列,我一直是这样写的: ​ 我发现阅读全文
posted @ 2019-03-28 09:34 -zhouzhendong- 阅读(105) 评论(0) 编辑
该文被密码保护。
posted @ 2019-03-27 19:52 -zhouzhendong- 阅读(362) 评论(0) 编辑
摘要: 原文链接www.cnblogs.com/zhouzhendong/p/UOJ370.html 题解 首先易知答案肯定是一条链,因为挂在链的最下面肯定比挂在其他节点上赚。 问题被转化成了从一个集合中不断选数加入到当前序列尾端,使得序列的所有前缀 AND 之和最小。 我们发现,假如加入一个数后可以使序列阅读全文
posted @ 2019-03-23 19:44 -zhouzhendong- 阅读(44) 评论(0) 编辑
摘要: 原文链接www.cnblogs.com/zhouzhendong/p/UOJ24.html 题解 我们将 C 型车站称为 左括号 '(', D 型车站称为右括号 ')' ,设括号 i 的位置为 p[i] 。 首先,我们用点 0 把所有位置都询问一遍,那么距离最近的那个点一定是在 0 右边的第一个 '阅读全文
posted @ 2019-03-21 10:13 -zhouzhendong- 阅读(24) 评论(0) 编辑
摘要: 原文链接www.cnblogs.com/zhouzhendong/p/UOJ373.html 前言 真是一道毒瘤题。UOJ卡常毒瘤++。我卡了1.5h的常数才过QAQ Orzjry 标算居然是指数做法。 题解 1. 感受一下线图上点的含义 1.1 一阶线图 L(G) 上的一个点对应 G 中的一条边。阅读全文
posted @ 2019-03-19 12:42 -zhouzhendong- 阅读(69) 评论(0) 编辑
摘要: 原文链接www.cnblogs.com/zhouzhendong/p/UOJ75.html 前言 根本没想到。 题解 首先我们可以考虑一种做法: 找一些图,使得他们各自的生成树个数乘起来等于 k。 那么只要将他们用一条链连起来就得到答案了。 接下来考虑如何得到这些图。 考虑随机生成一个 n 个点的图阅读全文
posted @ 2019-03-17 12:55 -zhouzhendong- 阅读(36) 评论(0) 编辑
摘要: 原文链接https://www.cnblogs.com/zhouzhendong/p/AGC031D.html 前言 比赛的时候看到这题之后在草稿纸上写下的第一个式子就是 $$f(p,q) = pq^{-1}$$ 然后就再也没有改过。 发现了一堆奇奇怪怪的性质可是一直没有用。 直到官方题解出来的时候阅读全文
posted @ 2019-03-17 10:22 -zhouzhendong- 阅读(162) 评论(5) 编辑
摘要: 原文链接https://www.cnblogs.com/zhouzhendong/p/UOJ349.html 题解 被cqz D没了。我D cly 关你啥事(逃 首先链的情况直接rand就好了。 期望次数 $O(n+\log n)$ 。 然而我一开始写挂了。 开始扯淡 我用这个模数,就可以过原题数据阅读全文
posted @ 2019-03-15 20:07 -zhouzhendong- 阅读(47) 评论(0) 编辑
摘要: 原文链接https://www.cnblogs.com/zhouzhendong/p/UOJ7.html 题解 这题是Unknown的弱化版。 如果这个问题出在序列上,那么显然可以CDQ分治 + 斜率优化 + 凸包上二分来做。 那么它出在树上? 点分治。 写挂了好多地方调了好久,自闭了。 代码阅读全文
posted @ 2019-03-14 08:24 -zhouzhendong- 阅读(27) 评论(0) 编辑
摘要: 原文链接https://www.cnblogs.com/zhouzhendong/p/UOJ394.html 题解 首先我们发现一个数不能既被往左换又被往右换。也就是说不能有任何一个数左边有比他大的,又被有比他小的。 也就是最长下降子序列长度不超过 2 。 所以我们一定可以找到 2 个上升序列包含所阅读全文
posted @ 2019-03-13 19:14 -zhouzhendong- 阅读(29) 评论(0) 编辑
摘要: 原文链接https://www.cnblogs.com/zhouzhendong/p/UOJ424.html 题解 主席太神仙了! 首先我们把题意转化成:对所有挺好序列建 笛卡尔树,有多少笛卡尔树互不同构。 容易推出 dp 式子:$f[i][j]$ 表示 $j$ 个数,他们的 max 为 i 。 $阅读全文
posted @ 2019-03-12 19:47 -zhouzhendong- 阅读(54) 评论(0) 编辑
摘要: 原文链接https://www.cnblogs.com/zhouzhendong/p/UOJ266.html 题解 首先我们可以直接暴力 $O(n^2)$ 用 sg 函数来算答案。 对于一个树就是枚举一下从根出发到哪一个节点为止的路径被删掉了,剩下所有的子树的sg值xor起来,对于每一个路径后的答案阅读全文
posted @ 2019-03-12 12:05 -zhouzhendong- 阅读(29) 评论(0) 编辑
摘要: 原文链接https://www.cnblogs.com/zhouzhendong/p/UOJ450.html 题解 首先有一个东西叫做“单位根反演”,它在 FFT 的时候用到过: $$\frac 1 n \sum_{i=0}^{n-1} \omega_n ^{d\cdot i} = [d|n]$$ 阅读全文
posted @ 2019-03-12 10:41 -zhouzhendong- 阅读(38) 评论(0) 编辑
摘要: 原文链接https://www.cnblogs.com/zhouzhendong/p/UOJ41.html 题解 首先写个乱搞: 一开始每一行都选择第一个非0元素,然后,我们对这个方案不断做更新,直到任意两行选择的值不同。更新方法:如果有两行选了相同的值,那么让靠前的那行选择后一个有0的值。 交上去阅读全文
posted @ 2019-03-11 20:51 -zhouzhendong- 阅读(18) 评论(0) 编辑
摘要: 原文链接https://www.cnblogs.com/zhouzhendong/p/UOJ290.html 题解 真是一道好题! 首先,如果不是仙人掌直接输出 0 。 否则,显然先把环上的边删光。 问题转化成多个树求解,把答案乘起来即可。 现在我们考虑如何求一个树的答案。 再转化一下题意可以变成选阅读全文
posted @ 2019-03-06 22:13 -zhouzhendong- 阅读(42) 评论(0) 编辑
摘要: 原文链接https://www.cnblogs.com/zhouzhendong/p/UOJ291.html 题解 结论:这个写错的树状数组支持的是后缀加和后缀求和。这里的后缀求和在 x = 0 的时候比较特殊,返回 0 。 于是我们需要查询 v[L-1] 和 v[R] 相同的概率是多少。 我们可以阅读全文
posted @ 2019-03-06 14:45 -zhouzhendong- 阅读(52) 评论(0) 编辑
摘要: 原文链接https://www.cnblogs.com/zhouzhendong/p/UOJ375.html 题解 首先,我们可以建出一个 k 个点的自动机,第 i 个点表示当前数对 k 取模为 i-1。显然每一个点有 m-1 条出边。 然后,稍加观察,我们就可以发现,如果一些节点的出边集合是相同的阅读全文
posted @ 2019-03-06 10:39 -zhouzhendong- 阅读(77) 评论(0) 编辑
摘要: 原文链接https://www.cnblogs.com/zhouzhendong/p/UOJ374.html 题解 想出正解有点小激动。 不过因为傻逼错误调到自闭。不如贺题 首先我们考虑如何 $O(n)$ 求一个答案。 首先,计算两条路径的贡献时,由于两国连续交战数次只算一次,所以我们可以只看这两条阅读全文
posted @ 2019-03-04 22:31 -zhouzhendong- 阅读(38) 评论(0) 编辑
摘要: 原文链接https://www.cnblogs.com/zhouzhendong/p/Balanced-Binary-Tree.html 注意是简单教程,不是入门教程。 splay 1. 旋转: 假设点 y 原是点 x 的 father,旋转操作可以在不改变中序遍历的基础上,将 y 变成 x 的儿子阅读全文
posted @ 2019-03-03 22:38 -zhouzhendong- 阅读(45) 评论(0) 编辑
摘要: 原文链接https://www.cnblogs.com/zhouzhendong/p/UOJ55.html 题解 做法还是挺容易想到的。 但是写的话…… 首先这种题如果只要求一棵树中的满足条件的点数(不需要在加点的同时维护答案),那么显然可以点分治: 假设当前点分中心为 x,设点 y 与 x 的距离阅读全文
posted @ 2019-03-03 22:33 -zhouzhendong- 阅读(40) 评论(2) 编辑
摘要: 原文链接https://www.cnblogs.com/zhouzhendong/p/CF461D.html 题解 首先我们可以发现如果确定了第一行,那么方案就唯一了。 然后,我们来看看一个点的值确定了会导致什么: 假设我们确定了红色点的值,那么所有包含橙色的格子xor起来就等于红色格子的值,绿色蓝阅读全文
posted @ 2019-03-02 15:01 -zhouzhendong- 阅读(27) 评论(0) 编辑









































CLY AK IOI