标签 - 线段树

? 解题记录 ? ? 洛谷 ? ? 可持久化数据结构 ? ? 线段树 ? ? 模板 ?    2017-09-09 19:23:12    472    0    0
题目背景这是个非常经典的主席树入门题——静态区间第K小 数据已经过加强,请使用主席树。同时请注意常数优化 题目描述如题,给定N个正整数构成的序列,将对于指定的闭区间查询其区间内的第K小值。 输入输出格式输入格式:   第一行包含两个正整数N、M,分别表示序列的长度和查询的个数。 第二行包含N个正整数,表示这个序列各项的数字。 接下来M行每行包含三个整数l, r, kl,r,k , 表示查询区间[l, r][l,r]内的第k小值。   输出格式:   输出包含k行,每行1个正整数,依次表示每一次查询的结果   输入输出样例输入样例#1:5&nbs
? 解题记录 ? ? 洛谷 ? ? 线段树 ? ? 模板 ?    2017-09-09 17:31:17    407    0    0
题目描述如题,已知一个数列,你需要进行下面两种操作: 1.将某区间每一个数加上x 2.将某区间每一个数乘上x 3.求出某区间每一个数的和 输入输出格式输入格式:   第一行包含三个整数N、M、P,分别表示该数列数字的个数、操作的总个数和模数。 第二行包含N个用空格分隔的整数,其中第i个数字表示数列第i项的初始值。 接下来M行每行包含3或4个整数,表示一个操作,具体如下: 操作1: 格式:1 x y k 含义:将区间[x,y]内每个数乘上k 操作2: 格式:2 x y k 含义:将区间[x,y]内每个数加上k 操作3: 格式:3 x y 含义:输出区间[x,y]内每个数的和对P取模所得
? 解题记录 ? ? BZOJ ? ? 并查集 ? ? 线段树 ? ? 可持久化数据结构 ?    2017-07-21 10:06:08    390    0    0
原题:  可持久化并查集  Descriptionn个集合 m个操作操作:1 a b 合并a,b所在集合2 k 回到第k次操作之后的状态(查询算作操作)3 a b 询问a,b是否属于同一集合,是则输出1否则输出0 0<n,m<=2*10^4 Sample Input5 6 1 1 2 3 1 2 2 0 3 1 2 2 1 3 1 2 Sample Output1 0 1                  无语了,第一次接触可持久化数据结