随笔分类 - 0x1c splay
摘要:题目链接 #解题思路 板子题,考察对$splay$的插入,删除,区间修改,区间翻转,区间求和,区间求最大子段和的基础操作。 const int maxn = 1e6+10; int n, m, a[maxn]; struct Node { int s[2], v, p, sz; int sum, s
阅读全文
摘要:题目链接 #解题思路 题目相当于询问每个点所属集合的第$k$小的数的编号,查询某个数属于哪个集合可以用并查集来解决。题目还涉及了集合之间的合并,由于合并之后集合的元素会改变,所以需要动态询问第$k$小,可以用平衡树来解决。另外,在集合合并的时候需要用启发式合并,把小集合合并到大集合上,这样可以把时间
阅读全文
摘要:题目链接 #解题思路 splay的模版题,首先先把l-1这个位置的结点splay到根,然后再把r+1这个位置的结点splay到l-1的下面,那么r+1的左子树就是区间l到r,然后用懒标记来交换子树中每个节点的左右儿子即可 const int maxn = 1e5+10; int n, m; stru
阅读全文

浙公网安备 33010602011771号