上一页 1 ··· 4 5 6 7 8 9 10 11 12 ··· 120 下一页
摘要: 可以将跳左/右/父亲抽象成二进制的形式. 跳左:x<<1 跳右:x<<1|1 父亲:x>>1 但是题中说如果跳到根节点之后再跳父亲编号仍然不变比较不好处理. 但是我们发现一个性质:令 $fl$ 表示一个区间能跳到最靠上的祖先,$path$ 表示跳到该祖先后向下跳的路径,答案一定可以表示成 max(1 阅读全文
posted @ 2020-07-10 09:13 EM-LGH 阅读(193) 评论(0) 推荐(0) 编辑
摘要: 假设当前进行到操作 $m$. 1. 将区间 $[l,r]$ 每个数加上 $v$. 2. 询问当前区间 $[l,r]$ 的和. 3. 令 $S(l,r,x)$ 代表 $[l,r]$ 区间在时刻 $x$ 时之和,求 $\sum_{i=0}^{m} S(l,r,i)$. 题解: 对于一个区间,我们要求当前 阅读全文
posted @ 2020-07-09 16:09 EM-LGH 阅读(1899) 评论(1) 推荐(7) 编辑
摘要: 非常好的一道题. 假设当前要求 $ans[x]$. 先令 $x$ 为根,然后发现对于子树 $y$ 来说,令 $g[y]$ 表示距离 $y$ 最近的叶子节点. 若 $g[y] \leqslant dis(x,y) $ 则 $y$ 子树的叶子中选一个就可以防止 $x$ 走到 $y$ 的子树中. 那么这个 阅读全文
posted @ 2020-07-09 10:46 EM-LGH 阅读(157) 评论(0) 推荐(0) 编辑
摘要: 根据期望的定义,我们可以求出所有情况之和再除以情况数量. 如果长度满足 $n=2^k$,线段树上一个节点新加 $v$ 的话 $v$ 的贡献就是 $v \times si[x]$,si[x] 即子树下叶节点个数. 如果长度不满足上述条件,由于线段树是完全二叉树结构,我们可以强制让深度小于最大深度的叶节 阅读全文
posted @ 2020-07-09 07:53 EM-LGH 阅读(165) 评论(0) 推荐(0) 编辑
摘要: 刚开始看到这道题的时候想的是线段树分治,毕竟这里的乘法和加法都是可以撤销的. 但是后来发现如果想要线段树分治的话就必须要满足交换律,但是标记 $(x,y)$ ( 乘 $x$ 后加 $y$)只满足结合律,不满足交换律. 那么就考虑 kdtree. kdtree 是维护平面上点的数据结构,然后我们可以把 阅读全文
posted @ 2020-07-06 15:20 EM-LGH 阅读(160) 评论(0) 推荐(0) 编辑
摘要: 令 $ok[l][r]$ 表示 $[l,r]$ 是否都能删掉,$g[l][r],f[l][r]$ 分别表示能否删成只剩左/右端点. 然后按照区间 DP 的方式来转移上述 3 个状态,得到最终的 $ok[l][r]$. 最后再令 $ans[i]$ 表示 $1$ ~ $i$ 的最优解,然后枚举 $ok[ 阅读全文
posted @ 2020-07-06 14:25 EM-LGH 阅读(132) 评论(0) 推荐(0) 编辑
摘要: 比较好的一道虚树题. 建出虚树,然后计算虚树中距离点 $x$ 最近的关键点,这个来一次树形dp+换根即可实现. 难点在于计算 $x$ 到 $x$ 父亲这一段所有节点归属于谁(肯定属于 $x$ 的最近点或 $x$ 父亲最近点). 这里的话肯定可以二分出拐点(拐点以前属于 $x$,拐点以后属于 $y$) 阅读全文
posted @ 2020-07-05 12:29 EM-LGH 阅读(161) 评论(0) 推荐(0) 编辑
摘要: 问题可以转化为:$A$ 与 $B$ 所有前缀一一配对,LCP 之和最大是多少. 构建后缀树,然后对于点 $x$,若 LCP 为 $x$ 则贡献就是 $x$ 子树中 $A$ 点和 $B$ 点较小数量. 我们发现如果要求和最大,就贪心匹配. 由于后缀树中点 $x$ 的长度为 mx[x] ~ mx[pre 阅读全文
posted @ 2020-07-05 08:54 EM-LGH 阅读(202) 评论(0) 推荐(0) 编辑
摘要: 题意:给定一个排列,每次有两种操作:1 区间降序排列 2 区间升序排列,求 m 才操作后 q 位置上的数字 这道题非常神仙啊. 假如说序列中只有 0,1 的话我们只需要用线段树维护 0,1的个数然后进行区间覆盖即可. 由于所有数互不相同,考虑二分 $q$ 点上的数 $mid$,然后将大于等于 $mi 阅读全文
posted @ 2020-07-05 08:11 EM-LGH 阅读(137) 评论(0) 推荐(0) 编辑
摘要: 比较简单的一道题. 矩阵乘法,唯一需要注意的地方就是这道题需要维护前缀和. 那么我们就多增加一个变量 $g$,表示前缀和,然后在设置矩阵的时候将 $g$ 要乘的一列中的元素都设置成前缀和即可. 做这种题的时候可以先打一个暴力来测试一下边界什么的,然后再去用矩阵乘法来优化. code: #includ 阅读全文
posted @ 2020-07-05 08:07 EM-LGH 阅读(180) 评论(0) 推荐(0) 编辑
上一页 1 ··· 4 5 6 7 8 9 10 11 12 ··· 120 下一页