摘要: 在讲树上差分之前,首先需要知道树的以下两个性质: (1)任意两个节点之间有且只有一条路径。 (2)根节点确定时,一个节点只有一个父亲节点 这两个性质都很容易证明。那么我们知道,如果假设我们要考虑的是从u到v的路径,u与v的lca是a,那么很明显,如果路径中有一点u′已经被访问了,且u′≠a,那么u' 阅读全文
posted @ 2020-12-10 16:59 Shmilky 阅读(241) 评论(0) 推荐(0) 编辑
摘要: 具体讲解可看:https://www.cnblogs.com/zhouzhendong/p/7256007.html LCA_Tarjan Tarjan 算法求 LCA 的时间复杂度为 O((n+q)α(n)) ,是一种离线算法,要用到并查集。 #include <bits/stdc++.h> us 阅读全文
posted @ 2020-12-08 21:54 Shmilky 阅读(101) 评论(0) 推荐(0) 编辑
摘要: ST表的功能很简单 它是解决RMQ问题(区间最值问题)的一种强有力的工具 它可以做到O(nlogn)预处理,O(1)查询最值 ST表是利用的是倍增的思想 拿最大值来说 我们用Max[i][j]表示,从i位置开始的2j个数中的最大值,例如Max[i][1]表示的是i位置和i+1位置中两个数的最大值 那 阅读全文
posted @ 2020-12-08 21:31 Shmilky 阅读(120) 评论(0) 推荐(0) 编辑
摘要: 原题链接:https://www.luogu.com.cn/problem/P3391 题意: 您需要写一种数据结构(可参考题目标题),来维护一个有序数列。 其中需要提供以下操作:翻转一个区间,例如原有序序列是 5 4 3 2 1,翻转区间是 [2,4]的话,结果是 5 2 3 4 1 思路: 文艺 阅读全文
posted @ 2020-12-07 20:46 Shmilky 阅读(102) 评论(0) 推荐(0) 编辑
摘要: 原题链接:https://www.luogu.com.cn/problem/P2286 题意: 凡凡开了一间宠物收养场。收养场提供两种服务:收养被主人遗弃的宠物和让新的主人领养这些宠物。 每个领养者都希望领养到自己满意的宠物,凡凡根据领养者的要求通过他自己发明的一个特殊的公式,得出该领养者希望领养的 阅读全文
posted @ 2020-12-07 20:40 Shmilky 阅读(91) 评论(0) 推荐(0) 编辑
摘要: 原题链接:https://www.luogu.com.cn/problem/P2234 题意:输出每天最小波动值的和,该天的最小波动值=min{|该天以前某一天的营业额-该天营业额|} 思路:Splay裸题 代码: #include<bits/stdc++.h> #define ls(x) T[x] 阅读全文
posted @ 2020-12-07 20:17 Shmilky 阅读(95) 评论(0) 推荐(0) 编辑
摘要: 前言 Spaly是基于二叉查找树实现的, 什么是二叉查找树呢?就是一棵树呗:joy: ,但是这棵树满足性质—一个节点的左孩子一定比它小,右孩子一定比它大 比如说 这就是一棵最基本二叉查找树 对于每次插入,它的期望复杂度大约是logn级别的,但是存在极端情况,比如9999999 9999998 999 阅读全文
posted @ 2020-12-07 19:45 Shmilky 阅读(96) 评论(0) 推荐(0) 编辑
摘要: 原题链接:https://www.luogu.com.cn/problem/P3369 题意: 您需要写一种数据结构(可参考题目标题),来维护一些数,其中需要提供以下操作: 插入 xx 数 删除 xx 数(若有多个相同的数,因只删除一个) 查询 xx 数的排名(排名定义为比当前数小的数的个数 +1  阅读全文
posted @ 2020-12-06 23:30 Shmilky 阅读(145) 评论(0) 推荐(1) 编辑
摘要: 原题链接:https://codeforces.com/contest/1440/problem/D 题意: 给你一张图,n个点,m条边,给定k,问能否找到下面两种图中任意一种。 找一个大小是k的集合,这k个点两两相连 找一个非空集合,里面每一个点都有至少k个点和他相连。 如果能找到第一种输出格式: 阅读全文
posted @ 2020-12-04 23:05 Shmilky 阅读(88) 评论(0) 推荐(0) 编辑
摘要: 原题链接:https://codeforces.com/contest/1452/problem/B 题意:有n个盒子,每个盒子里面有a[i]个球,对于任意一个盒子,可以将里面的球全部发出来,分配给其余 n-1 个盒子使得 其余 n-1 个盒子球的数量要相等。现在求:向n个盒子中最少添加几个球才能实 阅读全文
posted @ 2020-12-04 17:21 Shmilky 阅读(97) 评论(0) 推荐(0) 编辑