1 //线段树入门,单点修改,区间查询 2 #include 3 const int maxn = 3*1e6+5; 4 struct node 5 { 6 int l,r; 7 node *pl, *pr; 8 int s; 9 }; 10 node t[maxn]; 11 int cnt = 0... ...
分类:
其他好文 时间:
2017-08-10 01:11:19
阅读次数:
151
存板子。O(nlogn)预处理,O(1)查询。空间O(nlogn)。 ...
分类:
其他好文 时间:
2017-08-09 21:17:15
阅读次数:
97
使用Query子类查询 MatchAllDocsQuery TermQuery NumericRangeQuery BooleanQuery 使用QueryParser QueryParser MulitFieldQueryParser 先抽取公共代码 第一个MatchAllDoceQuery,是全 ...
分类:
Web程序 时间:
2017-08-07 22:18:39
阅读次数:
282
题意:初始q为空,给出排列p,每次取p中两个相邻的元素插入到q的开头,问q能得到的最小字典序为?n<=2e5.开头尽量小,假设最后一次取出的元素位置为[i,j].则ij之间有偶数个元素,i前面有偶数个元素,j类似.i,j奇偶性相反.i必须在某个奇数位置上,j必须在某个偶数位置上,RMQ维护奇/偶位置 ...
分类:
其他好文 时间:
2017-08-07 11:42:56
阅读次数:
119
LCA(最近公共祖先)的求法有多种,这里先介绍第一种:在线算法。 声明一下:下面的内容参考了http://www.cnblogs.com/scau20110726/archive/2013/05/26/3100812.html。 在线算法就是利用了DFS和RMQ两种算法,它先是预处理好所有情况,然后 ...
分类:
编程语言 时间:
2017-08-06 16:55:37
阅读次数:
182
我只是刷题练模板的 本文由Yzyet编写,网址为www.cnblogs.com/Yzyet。非Yzyet同意,禁止转载,侵权者必究。 ...
分类:
其他好文 时间:
2017-08-05 19:01:02
阅读次数:
103
我是来练模板的 本文由Yzyet编写,网址为www.cnblogs.com/Yzyet。非Yzyet同意,禁止转载,侵权者必究。 ...
分类:
其他好文 时间:
2017-08-05 18:53:02
阅读次数:
99
知道了RMQ后,随便打打就好了。 其实我是来复习RMQ的。 #include<iostream> #include<cstdio> #include<cmath> using namespace std; inline int read(){ int t=1,num=0;char c=getchar ...
分类:
其他好文 时间:
2017-08-05 18:51:55
阅读次数:
128
题目大意:给一个非降序排列的整数数组a,你的任务是对于一系列询问(i, j),回答ai,ai+1...aj中次数出现最多的值所出现的次数。 解题思路:由于是非降序排列,所有相同的数都是连在一起的。 本题可用RMQ做,但是我不会啊。 其实这题可以直接用线段树做(什么?RMQ可以用线段树做?我还是不会啊 ...
分类:
其他好文 时间:
2017-08-05 10:58:43
阅读次数:
100
【算法】堆+贪心+RMQ 【题解】 考虑暴力是把所有满足要求的子串算出答案,取前k小的,O(n^2)。 考虑优化,将左端点为x,右端点为x+L-1~x+R-1的子串视为一类。 所以定义三元组(x,l,r)为一类,其中l=x+L-1,r=x+r-1。 在一类中我们第一步应该取一类中的最大值,即取max ...
分类:
其他好文 时间:
2017-08-04 12:44:01
阅读次数:
88