摘要: 线段树(SegTree) 引入 现在有一个序列an,对于这个序列有一些操作,分别为:1.将区间[i,j]内的所有数都加上k2.询问区间[i,j]内的和这是一个动态处理的过程,如果强行进行暴力的话,时间复杂度将会非常的高,于是,边考虑一种数据结构专门解决这一类问题,于是,就有了*线段树* 算法思想 线 阅读全文
posted @ 2021-05-14 19:19 Roy0_0 阅读(61) 评论(0) 推荐(0) 编辑
摘要: 博弈论 1.什么是博弈论 博弈论是二人或多人在平等的对局中各自利用对方的策略变换自己的对抗策略,达到取胜目标的理论。博弈论是研究互动决策的理论。博弈可以分析自己与对手的利弊关系,从而确立自己在博弈中的优势,因此有不少博弈理论,可以帮助对弈者分析局势,从而采取相应策略,最终达到取胜的目的。简单来说,就 阅读全文
posted @ 2021-05-14 16:39 Roy0_0 阅读(577) 评论(0) 推荐(0) 编辑
摘要: 1.为什么会有树形DP 正常来说,线性DP用来解决序列的问题,但是当我们维护的数据结构发生变化的时候,比如,现在我们需要对一棵树 进行DP,普通的线性DP边无法解决了,这个时候,就需要用到树形DP了 2.树形DP的应用场景 1中的应用场景给的比较抽象,这里详细的来说一下。最经典的例子就是一个等级森严 阅读全文
posted @ 2020-11-27 21:45 Roy0_0 阅读(173) 评论(1) 推荐(0) 编辑
摘要: Treap是一种动态树,其主要操作是旋转rotate,不过我比较喜欢splay(附上链接可以看看哦kkkkk),而这样就不能支持持久化了 为了强行优化这一点,我们决定将其转化为静态的Treap,每插入一个新的数据,都先复制上一个版本,再进行修改,这样会极大的 节省空间。我们采取使用随机权值fix来强 阅读全文
posted @ 2020-11-13 21:29 Roy0_0 阅读(105) 评论(0) 推荐(0) 编辑
摘要: 1.简介 这其实是一个很神奇的东西,分为三种,其中比较常见的是:重链剖分,长链剖分; 那么·这个用来解决什么问题呢? 这个数据结构支持对于树上的·两个节点x,y,将其两点间的路径上的所有数加上一个值,并且可以查询 x到y的最短路上边的权值和。 3.相关概念 树链剖分:一种对树进行划分的算法,它先通过 阅读全文
posted @ 2020-10-23 16:45 Roy0_0 阅读(117) 评论(0) 推荐(0) 编辑
摘要: 1.例题入门 例题:洛谷传送门 P3380 【模板】二逼平衡树(树套树) 题目大意:维护一个有序数列,其中需要提供以下操作: 查询k在区间内的排名 查询区间内排名为k的值 修改某一位值上的数值 查询k在区间内的前驱(前驱定义为严格小于x,且最大的数,若不存在输出-2147483647) 查询k在区间 阅读全文
posted @ 2020-10-23 16:06 Roy0_0 阅读(131) 评论(0) 推荐(0) 编辑
摘要: 主席树 1.问题引入:(来源:shoi2006) 第k大的数 描述 你为Macrohard公司的数据结构部门工作,你的工作是重新写一个数据结构,这个数据结构能快速地找到一段数列中第k大的数。 就是说,给定一个整数数列a[1..n],其中每个元素都不相同,你的程序要能回答一组格式为Q (i , j , 阅读全文
posted @ 2020-10-16 21:08 Roy0_0 阅读(136) 评论(0) 推荐(0) 编辑
摘要: 1.什么是网络最大流 形象的来说,网络最大流其实就是这样一个生活化的问题:现在有一个由许多水管组成的水流系统,每一根管道都有自己的最大通过水流限制(流量),超过这个限制水管会爆(你麻麻就会来找你喝茶qwq)。现在,给定你一个出水口(原点),一个出水口(汇点),求这个网络中水流量的最大值。 ????看 阅读全文
posted @ 2020-10-07 14:53 Roy0_0 阅读(222) 评论(0) 推荐(1) 编辑
摘要: 1.LCA LCA就是最近公共祖先(Least common ancestor),x,y的LCA记为z=LCA(x,y),满足z是x,y的公共祖先中深度最大的那一个(即离他们最近的那一个)qwq 2.问题引入 看LCA之前最好学一下并查集,因为这两个东西有点相似,不同之处在于并查集一旦进行了路径压缩 阅读全文
posted @ 2020-10-03 10:35 Roy0_0 阅读(195) 评论(0) 推荐(0) 编辑
摘要: 快速读入/快速输出 NOI赛场上必备神器 1.为啥要使用快读/快输 在c++的iostream库中提供了cin和cout的标准流输入输出,方便确实是方便,就是有点小卡小卡的,啷个回事嘞,原来cin,cout都是先把数据存入输入输出流中,等读取数据结束再一起输出,可是我们完全可以直接输入输出,就没必要 阅读全文
posted @ 2020-08-14 17:04 Roy0_0 阅读(119) 评论(0) 推荐(0) 编辑
Live2D