
线段树
文章平均质量分 71
线段树的一些相关习题
lwz_159
原acmer(已退役)
展开
-
P5584 【SWTR-01】Sunny‘s Crystals(贪心线段树)
题目描述题目链接题目分析代码如下#include <iostream>#include <cstdio>#include <cmath>#include <string>#include <cstring>#include <set>#include <map>#include <queue>#include <vector>#include <algorithm>原创 2021-11-12 10:07:21 · 459 阅读 · 0 评论 -
P2061 [USACO07OPEN]City Horizon S(区间问题,线段树 / 堆)
题目描述Farmer John has taken his cows on a trip to the city! As the sun sets, the cows gaze at the city horizon and observe the beautiful silhouettes formed by the rectangular buildings.The entire horizon is represented by a number line with N (1 ≤ N ≤ 40,原创 2021-11-08 23:54:47 · 328 阅读 · 0 评论 -
2019 ICPC上海 F.A Simple Problem On A Tree(树链剖分)
题目描述题目链接题目大意题目分析代码如下原创 2021-09-22 09:31:17 · 190 阅读 · 0 评论 -
The 17th Zhejiang Provincial Contest B. Bin Packing Problem(线段树+map)
题目描述Lzw is having the Operations Research class now. Today the teacher is talking about the bin packing problem and some approximation algorithms to solve it.In the bin packing problem, items of different volumes must be packed into a finite number of b原创 2021-05-06 19:56:47 · 393 阅读 · 0 评论 -
P1438 无聊的数列(线段树+差分)
P1438 无聊的数列原创 2021-01-26 13:17:55 · 351 阅读 · 0 评论 -
P2894 [USACO08FEB]Hotel G(线段树)
题目链接原创 2021-01-26 12:31:39 · 284 阅读 · 0 评论 -
P4556 [Vani有约会]雨天的尾巴(树上的差分+线段树的启发式合并)
题目描述深绘里一直很讨厌雨天。灼热的天气穿透了前半个夏天,后来一场大雨和随之而来的洪水,浇灭了一切。虽然深绘里家乡的小村落对洪水有着顽固的抵抗力,但也倒了几座老房子,几棵老树被连根拔起,以及田地里的粮食被弄得一片狼藉。无奈的深绘里和村民们只好等待救济粮来维生。不过救济粮的发放方式很特别。首先村落里的一共有 n 座房屋,并形成一个树状结构。然后救济粮分 m 次发放,每次选择两个房屋 (x, y),然后对于 x 到 y 的路径上(含 x 和 y)每座房子里发放一袋 z 类型的救济粮。然后深绘里想原创 2021-01-24 15:32:28 · 405 阅读 · 0 评论 -
P4198 楼房重建(思维)
题目描述小 A 的楼房外有一大片施工工地,工地上有 N 栋待建的楼房。每天,这片工地上的房子拆了又建、建了又拆。他经常无聊地看着窗外发呆,数自己能够看到多少栋房子。为了简化问题,我们考虑这些事件发生在一个二维平面上。小 A 在平面上(0,0) 点的位置,第 i 栋楼房可以用一条连接 (i,0) 和 (i,Hi)的线段表示,其中 Hi为第 i 栋楼房的高度。如果这栋楼房上任何一个高度大于 0 的点与(0,0)的连线没有与之前的线段相交,那么这栋楼房就被认为是可见的。施工队的建造总共进行了 M 天。初始原创 2021-01-24 14:15:31 · 304 阅读 · 0 评论 -
P2824 [HEOI2016/TJOI2016]排序 (思维+排序+线段树+二分)
题目描述在 2016 年,佳媛姐姐喜欢上了数字序列。因而她经常研究关于序列的一些奇奇怪怪的问题,现在她在研究一个难题,需要你来帮助她。这个难题是这样子的:给出一个 1 到 n 的排列,现在对这个排列序列进行 m 次局部排序,排序分为两种:0 l r 表示将区间 [l,r] 的数字升序排序1 l r 表示将区间 [l,r] 的数字降序排序注意,这里是对下标在区间 [l,r] 内的数排序。最后询问第 q 位置上的数字。输入格式输入数据的第一行为两个整数 n 和 m,n 表示序列的长度,m原创 2021-01-23 22:02:22 · 547 阅读 · 0 评论 -
P2672 推销员(贪心+线段树)
题目描述阿明是一名推销员,他奉命到螺丝街推销他们公司的产品。螺丝街是一条死胡同,出口与入口是同一个,街道的一侧是围墙,另一侧是住户。螺丝街一共有N家住户,第i家住户到入口的距离为Si米。由于同一栋房子里可以有多家住户,所以可能有多家住户与入口的距离相等。阿明会从入口进入,依次向螺丝街的X家住户推销产品,然后再原路走出去。阿明每走1米就会积累1点疲劳值,向第ii家住户推销产品会积累Ai点疲劳值。阿明是工作狂,他想知道,对于不同的X,在不走多余的路的前提下,他最多可以积累多少点疲劳值。输入格式第一行原创 2021-01-22 09:01:10 · 442 阅读 · 0 评论 -
P5490 扫描线
题目描述求 n 个矩形的面积并。输入格式第一行一个正整数 n。接下来 n 行每行四个非负整数 x1, y1, x2, y2,表示一个矩形的左下角坐标为 (x1, y1),右上角坐标为 (x2, y2)。输出格式一行一个正整数,表示 n 个矩形的并集覆盖的总面积。输入输出样例输入2100 100 200 200150 150 250 255输出18000题目分析代码如下...原创 2021-01-21 12:19:47 · 285 阅读 · 0 评论 -
Educational Codeforces Round 95 (Rated for Div. 2)D. Trash Problem(权值线段树+离散化)
题目描述Vova decided to clean his room. The room can be represented as the coordinate axis OX. There are n piles of trash in the room, coordinate of the i-th pile is the integer pi. All piles have different coordinates.Let’s define a total cleanup as the fo原创 2020-09-16 08:01:49 · 422 阅读 · 0 评论 -
P4970 全村最好的嘤嘤刀(树状数组与线段树的梦幻联动)
题目描述重阳节到了,我们最好的八重樱拥有全村最好的嘤嘤刀……在绯玉丸力量的影响下,八重村成了一条长度为 n 的八重街,并且绯玉丸可以带着八重樱出现在街上的任意地点。而我们的八重樱则会在街上任意穿梭来获取某一地点上的嘤嘤嘤能量,用以升级她的嘤嘤刀。在每个时刻,都会发生以下 3 个事件:1 x val 表示在 x 地点出现了携带着 val 点嘤嘤嘤能量的绯狱丸,并且绯狱丸会吞噬该点的嘤嘤嘤能量,使得该点的嘤嘤嘤能量变为 val−ai点,ai为出现绯狱丸的前一刻,该点所存在的嘤嘤嘤能量。2 l r原创 2020-08-04 23:50:49 · 404 阅读 · 0 评论 -
P6492 [COCI2010-2011#6] STEP
题目描述给定一个长度为 n 的字符序列 a,初始时序列中全部都是字符 L。有q 次修改,每次给定一个 x,若 ax为 L,则将 ax修改成 R,否则将 ax修改成 L。对于一个只含字符 L,R 的字符串 s,若其中不存在连续的 L 和 R,则称 s 满足要求。每次修改后,请输出当前序列 a 中最长的满足要求的连续子串的长度。输入格式第一行有两个整数,分别表示序列的长度 n 和修改操作的次数 q。接下来 q 行,每行一个整数,表示本次修改的位置 x。输出格式对于每次修改操作,原创 2020-08-04 23:02:27 · 529 阅读 · 0 评论 -
P2073 送花(权值线段树)
题目描述小明准备给小红送一束花,以表达他对小红的爱意。他在花店看中了一些花,准备用它们包成花束。这些花都很漂亮,每朵花有一个美丽值W,价格为C。小明一开始有一个空的花束,他不断地向里面添加花。他有以下几种操作:操作 含义1 W C 添加一朵美丽值为W,价格为C的花。3 小明觉得当前花束中最便宜的一朵花太廉价,不适合送给小红,所以删除最便宜的一朵花。2 小明觉得当前花束中最贵的一朵花太贵,他心疼自己的钱,所以删除最贵的一朵花。-1 完成添加与删除,开始包装花束若删除操作时没有花,则跳过删除原创 2020-08-04 09:13:43 · 405 阅读 · 0 评论 -
P1168 中位数(权值线段树+离散化)
题目描述给出一个长度为NN的非负整数序列Ai,对于所有1≤k≤(N+1)/2,输出A1,A1∼A3,…,A1∼A2k−1的中位数。即前1,3,5,…个数的中位数。输入格式第1行为一个正整数N,表示了序列长度。第2行包含N个非负整数Ai (Ai ≤ 10^9)输出格式共(N+1)/2行,第i行为A1,A3,…,A2k−1的中位数。样例输入71 3 5 7 9 11 6输出1356说明/提示对于20%20%的数据,N ≤ 100N≤100;对于40原创 2020-08-03 23:38:32 · 1105 阅读 · 0 评论 -
P4513 小白逛公园
题目描述小新经常陪小白去公园玩,也就是所谓的遛狗啦…在小新家附近有一条“公园路”,路的一边从南到北依次排着nn个公园,小白早就看花了眼,自己也不清楚该去哪些公园玩了。一开始,小白就根据公园的风景给每个公园打了分-.-。小新为了省事,每次遛狗的时候都会事先规定一个范围,小白只可以选择第a个和第b个公园之间(包括a、b两个公园)选择连续的一些公园玩。小白当然希望选出的公园的分数总和尽量高咯。同时,由于一些公园的景观会有所改变,所以,小白的打分也可能会有一些变化。那么,就请你来帮小白选择公园吧。输入原创 2020-08-03 23:12:34 · 507 阅读 · 0 评论 -
P4588 [TJOI2018]数学计算
题目描述小豆现在有一个数x,初始值为1.小豆有Q次操作,操作有两种类型:1 m:x=x×m输出x%mod;2 pos:x= x / 第pos次操作所乘的数(保证第pos次操作一定为类型1,对于每一个类型1的操作至多会被除一次)输出x%mod;输入格式一共有t组输入(t≤5);对于每一组输入,第一 行是两个数字Q,mod(Q≤100000,mod≤100000000);接下来Q行,每一行为操作类型op,操作编号或所乘的数字m(保证所有的输入都是合法的).输出格式对于每一个操作,输出原创 2020-08-03 22:55:37 · 361 阅读 · 0 评论 -
P2023 [AHOI2009] 维护序列
题目描述老师交给小可可一个维护数列的任务,现在小可可希望你来帮他完成。有长为 N 的数列,不妨设为 a1,a2,…,aN。有如下三种操作形式:把数列中的一段数全部乘一个值;把数列中的一段数全部加一个值;询问数列中的一段数的和,由于答案可能很大,你只需输出这个数模 P 的值。输入格式第一行两个整数 N 和 P;第二行含有 N 个非负整数,从左到右依次为 a1,a2,…,aN;第三行有一个整数 M,表示操作总数;从第四行开始每行描述一个操作,输入的操作有以下三种形式:操作 1:1原创 2020-08-03 17:48:59 · 411 阅读 · 0 评论 -
P3740 [HAOI2014]贴海报
题目描述Bytetown城市要进行市长竞选,所有的选民可以畅所欲言地对竞选市长的候选人发表言论。为了统一管理,城市委员会为选民准备了一个张贴海报的electoral墙。张贴规则如下:electoral墙是一个长度为N个单位的长方形,每个单位记为一个格子;所有张贴的海报的高度必须与electoral墙的高度一致的;每张海报以“A B”表示,即从第A个格子到第B个格子张贴海报;后贴的海报可以覆盖前面已贴的海报或部分海报。现在请你判断,张贴完所有海报后,在electoral墙上还可以看见多少张海报原创 2020-08-03 16:45:11 · 432 阅读 · 0 评论 -
一个简单的整数问题2(树状数组&&线段树)
题目描述给定一个长度为N的数列A,以及M条指令,每条指令可能是以下两种之一:1、“C l r d”,表示把 A[l],A[l+1],…,A[r] 都加上 d。2、“Q l r”,表示询问 数列中第 l~r 个数的和。对于每个询问,输出一个整数表示答案。输入格式第一行两个整数N,M。第二行N个整数A[i]。接下来M行表示M条指令,每条指令的格式如题目描述所示。输出格式对于每个询问,输出一个整数表示答案。每个答案占一行。数据范围1≤N,M≤105,|d|≤10000,原创 2020-07-22 16:44:37 · 471 阅读 · 0 评论 -
你能回答这些问题吗
题目描述给定长度为N的数列A,以及M条指令,每条指令可能是以下两种之一:1、“1 x y”,查询区间 [x,y] 中的最大连续子段和,即 maxx≤l≤r≤y{∑ri=lA[i]}。2、“2 x y”,把 A[x] 改成 y。对于每个查询指令,输出一个整数表示答案。输入格式第一行两个整数N,M。第二行N个整数A[i]。接下来M行每行3个整数k,x,y,k=1表示查询(此时如果x>y,请交换x,y),k=2表示修改。输出格式对于每个查询指令输出一个整数表示答案。每个答案占原创 2020-07-26 23:45:36 · 648 阅读 · 0 评论 -
最大数
题目描述给定一个正整数数列 a1,a2,…,an,每一个数都在 0∼p−1 之间。可以对这列数进行两种操作:添加操作:向序列后添加一个数,序列长度变成 n+1;询问操作:询问这个序列中最后 L 个数中最大的数是多少。程序运行的最开始,整数序列为空。写一个程序,读入操作的序列,并输出询问操作的答案。输入格式第一行有两个正整数 m,p,意义如题目描述;接下来 m 行,每一行表示一个操作。如果该行的内容是 Q L,则表示这个操作是询问序列中最后 L 个数的最大数是多少;如果是 A t,原创 2020-07-26 22:49:05 · 642 阅读 · 0 评论