思路 可持久化Trie树的好题 注意到题目要求求的询问非常的鬼,不太好做 然后有趣的思路就出现了,我们预处理出来异或前缀和s[i],每次询问的x异或上s[n]之后,问题就变成了在l 1~r 1中选一个异或x最大的数 然后因为区间查询,上可持久化Trie树就好了 注意初始的Trie树不能是空树,必须先 ...
分类:
其他好文 时间:
2019-03-07 01:15:31
阅读次数:
259
非常简单的单点修改+区间加+区间查询。我用的是最近刚学的区间修改版本树状数组。 直接维护即可,注意修改后的单点值已经不是a[i],或者b[i],要通过区间查询求单点。不然是错的。 区间修改版本树状数组: 留坑 :线段树版本: ...
分类:
其他好文 时间:
2019-02-23 00:57:08
阅读次数:
194
问题1 对数据库的区间查询 如功能显示,想要按照年份和月份查询相应的记录,就要使用区间查询 对应的代码如下 servlet层的ChaXun 定义两个变量,sDate是起始查询,bDate是截止查询 调用的方法具体内容为 ...
分类:
数据库 时间:
2019-02-22 23:17:05
阅读次数:
230
树状数组 = O(logn) 单点修改 ,O(logn) 区间查询 如果要做到 区间修改 单点查询 我们就要加入差分的思想 用树状数组记录数组的差分 然后对差分进行前缀和就可以得到单点的数据 cpp //ios::sync_with_stdio(false); include define ll l ...
分类:
编程语言 时间:
2019-02-17 22:03:11
阅读次数:
174
一,日期区间查询,表里有一个时间字段 最常见的就是某时间段查询,比如xxxx时间 xxxx时间有多少条数据。例如数据库里的字段是 income_period, 该字段类型可以是字符串(varchar),可以是时间类型(datetime,date),mysql都支持区间查询 下面就以字符串类型为例 对 ...
分类:
数据库 时间:
2019-02-15 15:36:44
阅读次数:
376
传送门 分析 清华集训真的不是人做的啊嘤嘤嘤 我们可以考虑按操作时间把每个操作存进线段树里 如果现在点x正好使一个整块区间的右端点则更新代表这个区间的点 我们不难发现一个区间会因为不同的操作被分成若干块,每块对应序列上不同的区间 于是查询时对于每个线段树上区间查询时二分查找当前点在哪一块中即可 代码 ...
分类:
其他好文 时间:
2019-02-14 11:50:20
阅读次数:
165
这个专题主要学了两个数据结构 一个是线段树 一个是树状数组 线段树主要求区域操作 建树、单点查询、单点修改、区间查询、区间修改。 代码较为复杂 参考模板 树状数组 用于求和效率很高 进阶则为区域修改同一个值十分方便 主要有两种操作: 单点修改 区域查询(基础) 区域查询的差值即为单点查询 也比枚举算 ...
分类:
其他好文 时间:
2019-02-10 00:12:27
阅读次数:
208
字典树:字典树用来储存区域信息 主要有五种操作: 建树、单点查询、单点修改、区间查询、区间修改。 ...
分类:
其他好文 时间:
2019-02-08 13:02:53
阅读次数:
193
中文题面 思路:维和两个区间 一个是女神区间 一个是基友区间 如果是基友要预约时间 直接在基友区间查询可满足的起点 (这里先判tree[1].m >=length也就是有没有这样的区间满足时间length) 预约成功后更新基友区间 如果是女神要预约区间 先在基友区间预约看有没有满足的区间 (同样看根 ...
分类:
其他好文 时间:
2019-02-03 10:42:56
阅读次数:
207
题目传送门 题意: 给出 n 个数,q次区间查询,每次查询,让你选择任意个下标为 [ l , r ] 区间内的任意数,使这些数异或起来最大,输出最大值。 思路:离线加线性基。 线性基学习博客1 线性基学习博客2 对于此题,先把区间按照 r 从小到大排序,然后依次处理这些区间,每次插入线性基时,优先保 ...
分类:
其他好文 时间:
2019-02-02 14:27:23
阅读次数:
233