摘要: P4592 [TJOI2018]异或 P4592 [TJOI2018]异或 给定一棵树,每次询问一个子树的每个点与 z 的异或最大值,或者询问一条路径上每一个点和 z 的异或最大值。 同样的,这道题也可以直接 树剖+ 可持久化01Trie 来解决。 但是我们可以考虑更好一点的办法: 和之前那道题一样 阅读全文
posted @ 2021-04-12 19:38 __Anchor 阅读(55) 评论(0) 推荐(0) 编辑
摘要: P2633 Count on a tree P2633 Count on a tree 给定一棵树,询问树上两点路径的第 k 小,强制在线。 可以直接树剖然后主席树,复杂度俩 \(log\) 。 这里主要是一个数据结构维护树上前缀信息的技巧。 想一想我们求树上两点距离怎么求的? \(dist(u,v 阅读全文
posted @ 2021-04-12 19:32 __Anchor 阅读(72) 评论(1) 推荐(0) 编辑
摘要: P4735 最大异或和 P4735 最大异或和 可持久化 01Trie 维护区间异或最大值板子题。 以下标为 root 的编号,每次询问 \([l,r]\) 中的所有数异或 \(x\) 的最大值就是到 Trie 上面去搜索,记录当前子树中的数的个数。 然后如果两个root对应树的当前 cnt 不一样 阅读全文
posted @ 2021-04-12 18:25 __Anchor 阅读(63) 评论(0) 推荐(0) 编辑
摘要: P1975 [国家集训队]排队 P1975 [国家集训队]排队 对于一个长度为 n 的序列进行 k 次操作,每次操作都是交换序列中的某两个数。对于每一个操作,回答当前序列中有多少个逆序对。 树状数组套权值线段树直接维护,考虑每次修改的贡献即可。 view code #include<bits/std 阅读全文
posted @ 2021-04-12 16:32 __Anchor 阅读(88) 评论(0) 推荐(0) 编辑
摘要: CF785E Anton and Permutation CF785E Anton and Permutation 显然可以单独考虑每次交换对答案的贡献,然后树套树硬上即可。 树套树代码: view code #include<bits/stdc++.h> using namespace std; 阅读全文
posted @ 2021-04-12 16:24 __Anchor 阅读(143) 评论(0) 推荐(0) 编辑
摘要: P3759 [TJOI2017]不勤劳的图书管理员 P3759 [TJOI2017]不勤劳的图书管理员 逆序对是常见的二维偏序问题,这里是带交换的带权逆序对,也就是上一题的加强,多维护一下贡献即可。 阅读全文
posted @ 2021-04-12 16:20 __Anchor 阅读(58) 评论(0) 推荐(0) 编辑
摘要: CF785E Anton and Permutation CF785E Anton and Permutation 带交换逆序对。 前面(位置)比它大的数的个数+后面比它小的个数,很显然这就是一个三维偏序的问题(时间上也要满足偏序) 首先把第一维时间排序(原本就有序了) 然后对位置进行CDQ分治,对 阅读全文
posted @ 2021-04-12 16:19 __Anchor 阅读(72) 评论(0) 推荐(0) 编辑
摘要: P4054 [JSOI2009]计数问题 P4054 [JSOI2009]计数问题 一道三维偏序就因为数据变成了三维树状数组的水题... 对每个权值开一个二维树状数组,然后暴力修改暴力询问即可。 view code #include<bits/stdc++.h> using namespace st 阅读全文
posted @ 2021-04-12 16:17 __Anchor 阅读(46) 评论(0) 推荐(0) 编辑
摘要: P4396 [AHOI2013]作业 P4396 [AHOI2013]作业 CDQ分治+树状数组或者莫队+树状数组。 CDQ分治做法: 第一问很简单,就是区间询问大于等于一个数且小于等于一个数的个数,容易发现这就是二维偏序。 然后发现第二问就是矩阵数颜色,那么我们沿用 HH的项链 这道题的经典思路, 阅读全文
posted @ 2021-04-12 16:13 __Anchor 阅读(62) 评论(0) 推荐(0) 编辑
摘要: P5350&P5586 序列 P5350&P5586 序列 区间覆盖,区间求和,交换两个区间,区间复制后覆盖,区间加,区间翻转。 可以使用 \(FHQ Treap\) 来解决。 区间翻转,区间加,区间覆盖,区间求和常规操作,标记维护一下就行了,然后区间交换就是相当于 split 两个区间出来再合并就 阅读全文
posted @ 2021-04-12 16:12 __Anchor 阅读(120) 评论(0) 推荐(0) 编辑