随笔分类 - 数据结构——线段树——线段树、树状数组
摘要:atcoder abc 244 D - swap hats 给定两个 R,G,B 的排列 进行刚好 次操作,每一次选择两个交换 问最后能否相同 刚好 次 算出交换最少次数,判断是否为偶数。 E - King Bombee 点 边
阅读全文
摘要:T1 题意: 个人摘苹果,跳起高度为 ,苹果高度为 ,高度小的先摘,摘了就没了 直接排序+双指针,复杂度 T2 题意:要轰炸一个有向图的所有点,如果存在两个不同点 和 ,并且 、 连通 那么 \
阅读全文
摘要:T1 题目大意:有 个点,到点 可以获得 ,同时消耗 若当前价值小于 则不能到,问从 开始,任一点结束后的最大值。 最大值同时问最多访问点数。开始不用消耗 其实就是把所有 的点存下来,然
阅读全文
摘要:T1 题意:给你一个图,可以不花代价经过 条边,问从起点到终点的最短路 考试的想法:设 表示从起点免费了 条边到 的最短路 然后直接跑 结果: 正解:分层图,需要考虑去到下一层就不能回来的情况
阅读全文
摘要:题目大意 有一个 的方阵,每次有 离开,离开后有两个命令 向左看齐。这时第一列保持不动,所有学生向左填补空缺。这条指令之后,空位在第 行第 列。 向前看齐。这时第一行保持不动,所有学生向前填补空缺。这条指令之后,空位在第 \(n
阅读全文
摘要:T1 欧拉筛质数时若 是质数且没有被用过就顺便用于计算结果,复杂度 #include<bits/stdc++.h> using namespace std; inline int Rd() { register int x=0; char C=getchar(); fo
阅读全文
摘要:又是爆炸的一天,炸多了本蒟蒻已经习以为常 但今天比昨天整整高了 40 分!!!!却还是没有 100 今天本蒟蒻本想模仿奆佬的打字速度,结果思路混乱让我无法开始 T1 不是吧怎么是期望 dp ,期望值怎么求来着? 赛后:设 为第 i 颗星时的期望,\(F_0 = \dfrac{1}{p
阅读全文
摘要:Luogu LOJ 题目大意 有一颗依赖关系构成的一颗树,有两个操作 install ,把从 x 到根节点这一条链全都改为 1 uninstall ,把以 x 为根的子树全都变成 0 现在求每个操作会改变多少节点的值 题解 标准树剖,但是细节很多 懒标记开始为 -1,下传后也要变成 -1 聪明的做法
阅读全文
摘要:题目大意 有 T 组数据,每组数据有一个 N 表示有 N 个人一次贴海报 然后 N 对 表示一张海报的范围,问最后能看见多少张海报 数据范围: 题解 (开始英语不好看不懂题折腾了半天) 可以看出是线段树区改
阅读全文
摘要:关于线段树 线段数是一种区间树 可以看出:叶子即为输入的数 假设一个节点为 x ,则其左儿子为 2x 右儿子为 2x+1 操作解析 约定 | 变量名 | 意义 | | | : : | | input[] | 输入的数 | | t[] | 线段树 | 其中 t[] 是个结构体,包含左边界 l ,右边界
阅读全文
摘要:关于树状数组 树状数组,即 Binary Indexed Tree ,主要用于维护查询前缀和 属于 log 型数据结构 和线段树比较 都是 log 级别 树状数组常数、耗费的空间、代码量都比线段树小 树状数组无法完成复杂的区间操作,功能有限 树状数组介绍 二叉树大家一定不陌生 然而真实的树状数组省去
阅读全文