首先序列上的问题可以hash加二分搞 到树上依然可以hash加二分搞, 配合 $O(1)$ 的 $RMQ LCA$ 和长链剖分求 $k$ 级祖先 可以做到 $O(m\log n)$, 但是我天生自带大常数, 会 $T$ qwq(于是我放弃了双hash, 然后过了淦) 会在第六个点 $TLE$ 的代码 ...
分类:
其他好文 时间:
2020-04-28 10:00:41
阅读次数:
64
题意:a[i]代表维护1~i区间的线段树建树后数组的最大下标,有1e15范围内的l和r,求a[l]一直异或到a[r]的值。 分析:a[l]异或到a[r]采用从(1异或到a[l-1])异或(1异或到a[r])求出,所以只需要算1异或到a[i]即可。具体原理如何得到一个线段树数组最大下标的值还没有搞懂, ...
分类:
其他好文 时间:
2020-04-28 00:29:16
阅读次数:
53
感觉自己菜的一批,能留下来的有价值的东西可能就下面这点东西了吧。 $1.$ 别人的建议(包括这篇)对你不一定适用,自己最好找对自己有用的。 $2.$ 机房不要互奶,机房互奶真的没啥好处,反倒很容易让人飘,主要原因还是没看到和全国顶尖选手的差距。 $3.$ 尽量多接触一些优秀的外校选手,不要满足于自己 ...
分类:
其他好文 时间:
2020-04-27 15:26:45
阅读次数:
53
这个方法要开倍增求 $LCA$ 方法的两倍空间, 还要开额外数组记录深度和 $dfn$, 各位勇士慎重。 可以 $O(n + n\log n)$ 预处理 $O(1)$ 动态回答 $LCA$ (常数和RMQ一样), 不谈空间缺点的话还是吊打倍增求 $LCA$ 的。 算法流程: 算法的过程就是在便利有根 ...
分类:
其他好文 时间:
2020-04-27 11:26:33
阅读次数:
56
LINK: "T1" 算是一道中档题 考试的时候脑残了 不仅没写优化 连暴力都打挂了。 容易发现一个性质 那就是同一格子不会被两种以上的颜色染。(颜色就三种. 通过这个性质就可以进行dp了.先按照左端点排序。 设f[i]表示前i个画笔必选的最大价值。 枚举决策j 分类讨论相交还是包含 还是相离。 其 ...
分类:
其他好文 时间:
2020-04-26 16:50:26
阅读次数:
57
1 //poj1195 二维线段树之树套树 2 // 先确定横坐标所在的区间并记录该结点的编号p,然后再确定纵坐标所在的区间并记录该结点的编号cur,则tree[cur][p]为目标区间。 3 #include <cstdio> 4 #include <cstdlib> 5 #include <cs ...
分类:
其他好文 时间:
2020-04-26 14:15:37
阅读次数:
75
1 //zoj 2859 2 // 二维线段树之矩形树 求解矩阵和问题 3 #include <cstdio> 4 #include <cstdlib> 5 #include <cstring> 6 #include <cmath> 7 #include <algorithm> 8 #include ...
分类:
其他好文 时间:
2020-04-26 14:00:38
阅读次数:
64
2020-04-25 22:57:32 439. 线段树的构造 II 线段树是一棵二叉树,他的每个节点包含了两个额外的属性start和end用于表示该节点所代表的区间。start和end都是整数,并按照如下的方式赋值: 根节点的 start 和 end 由 build 方法所给出。 对于节点 A 的 ...
分类:
其他好文 时间:
2020-04-25 23:53:43
阅读次数:
116
链接:https://codeforces.com/contest/1334/problem/F 题意:定义函数f,对于一个含n个元素的数组arr,首先有一个空的数组c,按顺序对arr数组元素进行操作,若ai大于c数组所有元素,则将arr[i]加入c数组末尾,最后得到的数组c=f(arr)。现在给你 ...
分类:
其他好文 时间:
2020-04-25 14:15:39
阅读次数:
78
题目链接:The Child and Sequence 题意:给你你一个序列a,有三种操作:(1)求$\sum_{i=l}^{r}a[i]$,(2)让区间[l,r]内的所有数模x,(3)令a[k]=x 思路:如果没有操作(2),那就是线段树模板题,现在考虑如何实现操作(2) 定理:如果mod<x,那 ...
分类:
其他好文 时间:
2020-04-25 00:49:28
阅读次数:
50