
数据结构——线段树
MILLOPE
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
CF242E XOR on Segment(线段树)
题目给定一个长为n(n<=105n(n<=10^5n(n<=105)的数组数组里的数不超过10610^6106有两种操作:1:求sum[l,r]sum[l,r]sum[l,r]2:对[l,r][l,r][l,r]中的所有数和xxx异或题解线段树很可写的亚子。一般线段树区间修改的时候采用懒标记的方式,而对于xorxorxor这种操作,懒标记是行不通的的。 那么我们...原创 2019-10-24 14:15:35 · 333 阅读 · 0 评论 -
CF558E A Simple Task(线段树)
题目题目大意: 给定一个长度不超过10510^5105的字符串(小写英文字母),和不超过500005000050000个操作。每个操作L R KL\ R\ KL R K 表示给区间[L,R][L,R][L,R]的字符串排序,K=1K=1K=1为升序,K=0K=0K=0为降序。最后输出最终的字符串。题解刚看题的时候一点思路都没有只会暴力sort,后...原创 2019-10-19 07:31:13 · 164 阅读 · 0 评论 -
CF527C Glass Carving(线段树)
题目有一块w∗hw*hw∗h的玻璃,每次横着切一刀(HHH)或者竖着切一刀(VVV),没有两次相同的切割,求最大的矩形碎片面积。 样例中第一行是w,hw,hw,h(玻璃大小)和nnn(切割次数),字母后的数字表示距下边缘(HHH)/左边缘(VVV)的距离题解我们可以把长和宽看做010101序列,起初全部为000, 而每切一刀对应把相应位置的000变为111。若我们要求最大子矩阵的面积,我们...原创 2019-10-17 16:45:35 · 238 阅读 · 0 评论 -
CF600E Lomsat gelral(线段树合并)
题目一棵树有n个结点,每个结点都是一种颜色,每个颜色有一个编号,求树中每个子树的最多的颜色编号的和。(注意不是颜色和而是节点的编号和)题解线段树合并的板子题这道题首先我们需要一个维护在值域范围内的线段树(权值线段树),而如果我们直接建造一棵树复杂度会非常高。 为了降低复杂度,我们可以不用建出整个线段树的结构,在我们需要时再建出我们想要的节点。这种方法维护的线段树叫做动态开点线段树。而线...原创 2019-09-28 16:13:40 · 366 阅读 · 0 评论 -
P4556 [Vani有约会]雨天的尾巴(线段树合并)
题目题目背景深绘里一直很讨厌雨天。灼热的天气穿透了前半个夏天,后来一场大雨和随之而来的洪水,浇灭了一切。虽然深绘里家乡的小村落对洪水有着顽固的抵抗力,但也倒了几座老房子,几棵老树被连根拔起,以及田地里的粮食被弄得一片狼藉。无奈的深绘里和村民们只好等待救济粮来维生。不过救济粮的发放方式很特别。题目描述首先村落里的一共有n座房屋,并形成一个树状结构。然后救济粮分m次发放,每次选择两个房...原创 2019-09-28 12:24:25 · 180 阅读 · 0 评论 -
泳池(skylines)(线段树)
题目样例输入57 7 6 9 92 5 52 3 14 1 11 2 242534样例输出1703题解对于一条链的情况:假设我们当前要求的点为uuu,那么我们可以建一棵线段树,树上每个节点vvv表示−c[v]+dis(u,v)-c[v]+dis(u,v)−c[v]+dis(u,v),在我们进行区间修改时,假设我们要更新的下一个点为u′u&#...原创 2019-09-11 21:55:27 · 156 阅读 · 0 评论 -
CF609E Minimum spanning tree for each edge(树链剖分+MST)
题目给你n个点,m条边,如果对于一个最小生成树中要求必须包括第i(1<=i<=m)条边,那么最小生成树的权值总和最小是多少。输入格式第一行n,m后面m行每行u,v,w代表一条边输出格式m行,第i行一个整数代表包括第i条边时的最小权值和CF609E题解先对原图跑一遍最小生成树对于在最小生成树中的边直接输出最小生成树的边权和将其余边加进去后(其实不用真的加进去),会...原创 2019-07-17 21:06:11 · 230 阅读 · 0 评论 -
luogu P4114 Qtree1(树链剖分)
题目给定一棵n个节点的树,有两个操作:CHANGE i ti 把第i条边的边权变成tiQUERY a b 输出从a到b的路径中最大的边权,当a=b的时候,输出0输入输出格式输入格式:第一行输入一个n,表示节点个数第二行到第n行每行输入三个数,ui,vi,wi,分别表示 ui,vi有一条边,边权是wi第n+1行开始,一共有不定数量行,每一行分别有以下三种可能...原创 2019-07-19 20:28:38 · 227 阅读 · 0 评论 -
P3178 [HAOI2015]树上操作(树链剖分)
题目题解树链剖分板子题树链剖分讲解codecodecode#include <complex>#include <cstring>#include <cctype>#include <cmath>#include <list>#include <map>#include <set>#i...原创 2019-07-15 21:37:14 · 170 阅读 · 0 评论 -
P2590 [ZJOI2008]树的统计(树链剖分)
题目题目描述一棵树上有n个节点,编号分别为1到n,每个节点都有一个权值w。我们将以下面的形式来要求你对这棵树完成一些操作:I. CHANGE u t : 把结点u的权值改为tII. QMAX u v: 询问从点u到点v的路径上的节点的最大权值III. QSUM u v: 询问从点u到点v的路径上的节点的权值和注意:从点u到点v的路径上的节点包括u和v本身输入输出格式输入格式:输...原创 2019-07-16 21:04:21 · 180 阅读 · 0 评论 -
区间最大公约数(线段树)
题目题目传送门题解gcd(a,b)=gcd(a,b−a)\gcd(a,b)=\gcd(a, b-a)gcd(a,b)=gcd(a,b−a)gcd(a,b,c)=gcd(a,b−a,c−b)\gcd(a,b,c) = \gcd(a,b-a, c-b)gcd(a,b,c)=gcd(a,b−a,c−b)gcd(a1,a2,⋯ ,an)=gcd(a1,...原创 2019-07-01 09:31:54 · 2164 阅读 · 4 评论 -
P3924 康娜的线段树(线段树+期望)
题目题目传送门\color{red} 题目传送门题目传送门小林是个程序媛,不可避免地康娜对这种人类的“魔法”产生了浓厚的兴趣,于是小林开始教她OI。今天康娜学习了一种叫做线段树的神奇魔法,这种魔法可以维护一段区间的信息,是非常厉害的东西。康娜试着写了一棵维护区间和的线段树。由于她不会打标记,因此所有的区间加操作她都是暴力修改的。具体的代码如下:struct Segment_Tree{#...原创 2019-07-02 14:31:08 · 353 阅读 · 0 评论 -
售票系统
某次列车途经C个城市,城市编号依次为1到C,列车上共有S个座位,铁路局规定售出的车票只能是坐票, 即车上所有的旅客都有座。售票系统是由计算机执行的,每一个售票申请包含三个参数,分别用O、D、N表示,O为起始站,D为目的地站,N为车票张数。售票 系统对该售票申请作出受理或不受理的决定,只有在从O到D的区段内列车上都有N个或N个以上的空座位时该售票申请才被受理。请你写一个程序,实现这个自动 售票系统。 输入格式 Input Format 第一行包含三个用空格隔开的整数C、S和R,其中1≤C≤60原创 2019-04-23 21:53:21 · 398 阅读 · 0 评论 -
线段树——求最大连续字子段和
题目描述给定长度为N的数列A,以及M条指令 (N≤500000, M≤100000),每条指令可能是以下两种之一:“2 x y”,把 A[x] 改成 y。“1 x y”,查询区间 [x,y] 中的最大连续子段和,即 max(x≤l≤r≤y) { ∑(i=l~r) A[i] }。对于每个询问,输出一个整数表示答案。输入格式第一行两个整数N,M第二行N个整数Ai接下来M行每行3个...原创 2019-04-01 21:31:16 · 481 阅读 · 0 评论 -
线段树——区间修改+查询区间最大值
题目描述 Description 给定一个数列,初值全为0,现对这个序列有两种操作:操作1:将第k1 个数 到 第k2 个数加1;操作2:查询 从第k1个数到第k2个数得最大值。所有的数都 <=100000输入格式 Input Format 第一行给定一个整数n,表示有n个操作。以下接着n行,每行三个整数,表示一个操作。输出格式 Output Format 若干行,查询...原创 2019-03-28 09:24:12 · 5282 阅读 · 3 评论 -
线段树——单点修改+查询区间最大值
题目描述 Description 给定一个包含n个数的序列,初值全为0,现对这个序列有两种操作:操作1:把 给定 第k1 个数改为k2;操作2:查询 从第k1个数到第k2个数得最大值。(k1<=k2<=n)所有的数都 <=100000输入格式 Input Format 第一行给定一个整数n,表示有n个操作。以下接着n行,每行三个整数,表示一个操作。输出格式 O...原创 2019-03-28 09:22:12 · 1170 阅读 · 0 评论