Description 周老师无聊时乱写了 n 个区间,但处女座的他随后又想将 n 个区间整理合并,但他发现区间太多了,于是他想请你帮帮他 Description 周老师无聊时乱写了 n 个区间,但处女座的他随后又想将 n 个区间整理合并,但他发现区间太多了,于是他想请你帮帮他 周老师无聊时乱写了 ...
分类:
其他好文 时间:
2017-12-24 18:52:55
阅读次数:
101
题目背景 这是一道经典的Splay模板题——文艺平衡树。 题目描述 您需要写一种数据结构(可参考题目标题),来维护一个有序数列,其中需要提供以下操作:翻转一个区间,例如原有序序列是5 4 3 2 1,翻转区间是[2,4]的话,结果是5 2 3 4 1 输入输出格式 输入格式: 第一行为n,m n表示 ...
分类:
其他好文 时间:
2017-12-12 21:53:23
阅读次数:
113
NOIP回来就一直想着学平衡树。。。平衡树写久了调不出来真的会头脑发热.jpg 大概只写了几道题。。。 fhqtreap是不需要旋(xun)转(jun)的平衡树,仅使用分裂合并,一样可以保持平衡树的性质,并且可以非常简单地处理区间问题。 fhqtreap的核心有两端代码,split(分裂)和merg ...
分类:
编程语言 时间:
2017-11-27 23:47:04
阅读次数:
190
前言 上一节我们学习了splay所能解决的基本问题,这节我来讲一下splay怎么搞区间问题 实现 splay搞区间问题非常简单,比如我们要在区间$l,r$上搞事情,那么我们首先把$l$的前驱旋转到根节点 再把$r$的后继旋转到根节点的右儿子 那么此时根节点的右儿子的左儿子所代表的就是区间$l,r$ ...
分类:
其他好文 时间:
2017-11-26 17:48:37
阅读次数:
136
恢复内容开始 之前做了个运输计划,发现了树上前缀和这个神奇的东西 因为树这个特殊的结构,所以如果树是静态的,那么区间问题树上前缀和很好用。 提一下,如果是离线的树上修改,树上差分也是一个很好用的东西。 (实际上是我不会打树剖) 然后今天做了个这个题: 山山最近开始玩一款叫做《白色相簿 2》的 Gal ...
分类:
其他好文 时间:
2017-10-16 16:46:07
阅读次数:
102
Input示例 Output示例 题意:给出n条一维线段,求不重合的最多线段数。 解析:这个是典型的贪心算法的区间问题。 贪心策略:每次取尽可能短的区间,而且保证相互之间不重合。那么我们将区间的右边界进行升序排序(左边界要从右往左考虑),然后开循环扫描,维护一个右边界,进行判断。以下是我的代码 ...
分类:
其他好文 时间:
2017-10-07 11:51:55
阅读次数:
111
题目链接 小Hi的公司最近员工增长迅速,同时大大小小的会议也越来越多;导致公司内的M间会议室非常紧张。 现在小Hi知道公司目前有N个会议,其中第i个会议的时间区间是(Si, Ei)。 注意这里时间区间可以视为是开区间,也就是说(3, 5)和(5, 6)不会被视为是同时进行的会议。 小Hi想知道如果他 ...
分类:
其他好文 时间:
2017-09-27 13:19:29
阅读次数:
108
树状数组(Binary Indexed Tree) 前面几篇文章我们分享的都是关于区间求和问题的几种解决方案,同时也介绍了线段树这样的数据结构,我们从中可以体会到合理解决方案带来的便利,对于大部分区间问题,线段树都有其绝对的优势,今天这篇文章,我们就来欣赏由线段树变形的另外一个数据结构--树状数组, ...
分类:
编程语言 时间:
2017-09-17 01:31:37
阅读次数:
290
定义: 块状数组是基于分块思想的数据结构,较基于分治思想的数据结构如线段树、平衡树等效率较低,但通用性更强。在块状数组的基础上加以扩展,就可以得到块状链表。 原理: 普通数组在处理一些区间问题时,复杂度通常会退化至O(n)。一个朴素的想法就是将这个数组分为若干个子区间,同时维护这些子区间的统计值,如 ...
分类:
编程语言 时间:
2017-09-02 19:53:13
阅读次数:
168
题目大意:给你一个字符串,和一些问题,每个问题问你[l,r]子串的哈希值是多少。 哈希值计算方法为:$H(s)=\prod _{i=1} ^{i\leq len(s)}(s_i-28)(mod\ 9973)$。 其中$s_i$代表 S[i] 字符的 ASCII 码。 解题思路:我们知道,要算区间[l ...
分类:
其他好文 时间:
2017-08-13 20:48:50
阅读次数:
152