![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
线段树
71kg
这个作者很懒,什么都没留下…
展开
-
D-query SPOJ - DQUERY (线段树 / 莫队)
题目链接:https://cn.vjudge.net/problem/SPOJ-DQUERY离线处理,注意排序方式#include <iostream>#include <cstdio>#include <cstring>#include <algorithm>#include <cmath>#include &...原创 2019-05-21 17:03:18 · 179 阅读 · 0 评论 -
Area of Simple Polygons POJ - 1389 (扫描线求矩形面积并)
题目链接:https://cn.vjudge.net/problem/POJ-1389思路跟Atlantis POJ 1151 一样,只是换了一种输入格式如果扫面线不懂的 可以点击此处看一看详细过程Atlantis#include <algorithm>#include <iostream>#include <cstring>#inc...原创 2019-08-16 21:37:26 · 113 阅读 · 0 评论 -
Hotel POJ - 1823 (线段树区间更新,区间合并,求最长连续区间)
题目连接:http://poj.org/problem?id=1823The "Informatics" hotel is one of the most luxurious hotels from Galaciuc. A lot of tourists arrive or leave this hotel in one year. So it is pretty difficult to k...原创 2019-08-16 22:46:37 · 131 阅读 · 0 评论 -
POJ 2155 Matrix (二维线段树)
题目链接:https://cn.vjudge.net/problem/POJ-2155Given an N*N matrix A, whose elements are either 0 or 1. A[i, j] means the number in the i-th row and j-th column. Initially we have A[i, j] = 0 (1 <= i...原创 2019-08-17 01:40:41 · 140 阅读 · 0 评论 -
Stars in Your Window POJ - 2482 (扫描线+矩阵内点的个数(不包括边界))
题目链接:http://poj.org/problem?id=2482题意:给你一个矩形,让你求出矩形在某一个位置时 点的权值和最大(不包括边界)if(l + 1 == r) return ;建边方法 ss[++laz_ss] = seg(x, x + w, y, c); ss[++laz_ss] = seg(x, x + w, y ...原创 2019-08-17 02:59:59 · 190 阅读 · 0 评论 -
Feed the dogs POJ - 2761 (主席树+区间第k大)
题目链接:http://poj.org/problem?id=2761区间第k大模板题,和这题一样HDU - 2665 kth number#include <iostream>#include <cstdio>#include <algorithm>using namespace std;const int maxn = 1e5 + 10;...原创 2019-08-22 21:52:23 · 129 阅读 · 0 评论 -
Lexical Sign Sequence (线段树+贪心)
题目描述Andi likes numbers and sequences, especially, sign sequences. A sign sequence is a sequence whichconsists of -1 and 1. Andi is a curious person, thus, he wants to build a sign sequence which le...原创 2019-08-28 11:10:02 · 276 阅读 · 0 评论 -
Codeforces 1089K King Kog's Reception(线段树)
题目链接:https://codeforces.com/contest/1089/problem/K题意:有一些骑士要去见国王,公主也要见国王给你q个询问,询问有三种操作,1、+ t d表示一个骑士在t分钟的时候去见国王,要见d分钟。2、 - i 表示取消输入序列的第i个想要见国王的骑士3、? t 表示如果公主在 t 时间见国王,要等多久国王每次只能见一个人,其他...原创 2019-08-28 17:05:32 · 236 阅读 · 0 评论 -
Count Color POJ - 2777 (线段树,区间更新,二进制存储)
题目链接:http://poj.org/problem?id=2777题意:给你一段长L的板子, 刚开始染了1号颜色,给你q个操作,1、C A B val 从A到B染成val 色2、P A B 查询从A 到B 一共有多少种不同的颜色思路:由于一共30种颜色,所以用一个30位的二进制串就可以表示了;如果染val色 那么让ans = (1 << val);正好学...原创 2019-08-30 18:31:34 · 156 阅读 · 0 评论 -
Buy Tickets POJ - 2828 (线段树逆序更新)
题目链接:http://poj.org/problem?id=2828题意:给你一个插队的序列,问最终的序列是什么倒着更新,对于给你的每一个人所在的位置pos,那么他的前面(包括本身)一定需要pos+1个空位,所以线段树维护空位的个数就好了,注意多组输入,注意少调用函数,会超时#include <iostream>#include <cstdio>...原创 2019-08-30 23:32:09 · 181 阅读 · 0 评论 -
Who Gets the Most Candies? POJ - 2886 (线段树)
题目链接:http://poj.org/problem?id=2886这题题意就非常迷,to left , to right 竟然是顺时针和逆时针的意思WTF!!!预处理一下1-n的不同的因子个数然后线段树维护一下区间内剩下的人数就可以了,主要是找到去掉的人在剩下的人里选第几个如果是正的那么 顺时针第val个 就让当前位置pos+val - 1 然后对剩下的人数取模,为什...原创 2019-08-31 00:58:51 · 154 阅读 · 0 评论 -
City Horizon POJ - 3277 (扫描线求面积并)
题目链接:http://poj.org/problem?id=3277题意:给你n个矩形,就面积并注意输入就好#include <algorithm>#include <iostream>#include <cstring>#include <cstdio>#include <cmath>#define ll lo...原创 2019-08-31 22:23:59 · 177 阅读 · 0 评论 -
Beam Cannon HDU - 5091 (扫描线) 求矩形内的点的数量
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5091题意:给你n个二维平面的点 矩形的高h,宽w,让你求这个矩形 在某个位置时包括的最多的点的数量扫面线板子,注意处理坐标的方式#include <cstdio>#include <cstdlib>#include <cmath>#includ...原创 2019-07-28 21:15:29 · 571 阅读 · 0 评论 -
Hotel POJ - 3667 (线段树维护连续0的长度)
题目链接:http://poj.org/problem?id=3667题意:给你一些空房子,有一些人来住房子,每次询问m个人能不能住上,需要住连续的空房子空房子用0表示,被占用的房子用1表示,然后用线段树维护一个区间的最长连续0的长度,左连续,右连续区间合并的时候,最长的连续0的长度,从三个值里取最大值,max(左儿子的最大值,右儿子的最大值,左儿子的最长右连续+右儿子的最长左连续)...原创 2019-08-31 23:41:23 · 231 阅读 · 0 评论 -
Picture HDU - 1828 (扫描线求矩形周长并)
题目连接:https://cn.vjudge.net/problem/HDU-1828题意:给你n个矩形,让你求矩形的轮廓的周长之和两遍扫描线从左到右,从下到上即可。#include <iostream>#include <cstdio>#include <algorithm>#include <cstring>using...原创 2019-08-16 21:37:29 · 150 阅读 · 0 评论 -
Atlantis POJ - 1151 (扫描线求矩形面积并)
题目链接:http://poj.org/problem?id=1151题目给了n个矩形,每个矩形给了左下角和右上角的坐标,矩形可能会重叠,求的是矩形最后的面积。因为变化范围比较大,我们要用到离散化,重点说一说扫描线的过程:下面有几个矩形现在我们假设有一根扫描线,从下往上开始扫描如图所示,我们可以把整个矩形分成如图各个颜色不同的小矩形,那么这个小矩形的高就...原创 2019-08-16 21:35:38 · 175 阅读 · 0 评论 -
2019牛客暑期多校训练营(第八场)E Explorer (线段树维护区间 + 并查集 启发式合并优化)
题目链接:https://ac.nowcoder.com/acm/contest/888/E题意:一些路径上限制通过的人的体型[l, r],问从1到n最多有多少种体型可以通过这道题的处理方式和牛客第七场的 Find the middle 类似,线段树处理区间 老样子,存左端点,右端点+1,离散化之后,更新线段树,线段树维护每个合法的区间内 边的条数,然后在线段树上 从上到下处理...原创 2019-08-15 00:19:35 · 158 阅读 · 0 评论 -
敌兵布阵 HDU - 1166 (线段树)
题目链接:https://cn.vjudge.net/problem/HDU-1166线段树的基本操作,单点更新,区间查询#include <iostream>#include <cstdio>#include <cstring>#include <cmath>#include <algorithm>#incl...原创 2019-07-01 17:45:32 · 98 阅读 · 0 评论 -
A Simple Problem with Integers POJ - 3468 (线段树)
题目链接:https://cn.vjudge.net/problem/POJ-3468题意:给你n个数,m个查询有两种查询,一种是区间修改,给一个区间每个数都加上c 一种是区间查询,求这个区间的和。需要lazy标记#include <iostream>#include <cstdio>#include &l...原创 2019-07-01 17:48:38 · 108 阅读 · 0 评论 -
2019年杭电多校第二场 HDU-6602 Longest Subarray (线段树,思维)
题目链接:HDU 6602 Longest Subarray题意:先给你三个数n,c,k,然后给你n个数 a[1],a[2],a[3]...a[n] 其中让你求出一个子区间 [l,r] 对于1~c中的每个数 在这个区间内要么不出现 要么出现次数大于等于k次,让你求最长的那个区间分析:因为是最长子区间,所以对于任意一个右端点R = i 找到满足条件的最远的...原创 2019-07-26 21:33:29 · 187 阅读 · 2 评论 -
2019年杭电多校第三场 HDU-6609 Find the answer(线段树+思维)
题目链接:HDU-6609 Find the answer题意:给你n,m,然后n个数,对于每一个i来说 要求删掉区间[1,i) (注意这里是左闭右开区间)最少的数使得区间[1,i]内数字的和小于等于m当时就只想到了用优先队列模拟,可想而知 T T T ,后来知道用线段树,QAQ,死活想不到这种题需要用线段树写思路:要求删除最少的数,肯定是删除尽量大的数,换一个思维,也就是用尽...原创 2019-07-30 01:00:59 · 159 阅读 · 0 评论 -
南昌网络赛 Max Answer(单调栈+线段树)
题目链接:Max Answer题意:对于所有的 求 思路:对于每一个,假设当作最小值,然后求出作用的区间 ,单调栈就可以。当<0时 ,需要找 最小那么就需要 右边取前缀最小的,左边取前缀最大的。ai>=0时,就是反过来的#include <iostream>#include <cstdio>#include <s...原创 2019-07-30 23:01:25 · 143 阅读 · 0 评论 -
2019牛客暑期多校训练营 第四场 C-sequence (单调栈+线段树)
题目链接:Sequence题意:对于所有的 l,r 求 思路:对于每一个,假设当作最小值,然后求出作用的区间 ,单调栈就可以。当<0时 ,需要找 最小那么就需要 右边取前缀最小的,左边取前缀最大的,ai>=0时,就是反过来的。这个和南昌网络赛基本一样Max Answer#include <iostream>#include <cs...原创 2019-07-30 23:07:33 · 158 阅读 · 0 评论 -
2019年第二阶段我要变强个人训练赛第十八场 扶桑号战列舰(线段树+递归)
问题 N: 扶桑号战列舰时间限制: 1 Sec内存限制: 128 MBSpecial Judge题目描述众所周知,一战过后,在世界列强建造超无畏级战列舰的竞争之中,旧日本海军根据“个舰优越主义”,建造了扶桑级战列舰,完工时为当时世界上武装最为强大的舰只。同时,扶桑号战列舰也是舰岛最为科幻的战列舰。当然,要建造这样的舰船,科技水平是必须的。同样众所周知的是,德意志科学...原创 2019-07-30 22:38:48 · 136 阅读 · 0 评论 -
CCPC-Wannafly & Comet OJ 夏季欢乐赛(2019) D茶颜悦色 (扫描线,求正方形内的点)
题目链接:https://cometoj.com/contest/59/problem/D?problem_id=2713题目描述茶颜悦色也太好喝了!鸡尾酒在长沙的各种茶颜悦色的店铺中流连忘返。他发现长沙有炒鸡多的茶颜悦色店,走两步就能遇到一家。“方圆一公里能有十家茶颜悦色!”鸡尾酒感叹了起来。于是他想到了一个问题:最密集的地方,能有多少家茶颜悦色的店?鸡尾酒将长沙...原创 2019-07-28 21:12:21 · 370 阅读 · 0 评论 -
2019牛客暑期多校训练营(第七场) C Governing sand (线段树)
题意:• n种树,第i种树有P[i]颗,砍掉每颗树的代价是C[i], 高度是H[i]. • 需要用最小的代码砍掉一些树,让剩下的最高的树的数量超过一半。思路:从从低到高枚举最高的树,在剩下的树当中,用一颗线段树维护,线段树按照代价从小到大的顺序构建,支持加入类树,查询前x个的总和#include<bits/stdc++.h>using namespace st...原创 2019-08-13 13:13:10 · 179 阅读 · 0 评论 -
2019牛客暑期多校训练营(第七场) E Find the median (线段树+离散化区间)
题目链接:https://ac.nowcoder.com/acm/contest/887/E题意:每次插入区间[Li, Ri]之间的数,查询中位数多次询问,所以需要线段树维护,把区间离散化一下,让线段树每个节点l, r维护 离散化之后的区间数组的下标,sum维护区间内的数字的个数,lazy标记数组,len区间长度。离散化之后,就是平常的线段树维护了#include &l...原创 2019-08-13 17:09:21 · 198 阅读 · 0 评论 -
SPOJ GSS1 (区间最大子段和)(线段树)
题目连接:https://www.spoj.com/problems/GSS1/en/题意:给你n个数,有q个询问,l,r,求区间内最大连续字段和线段树维护区间的最大字段和maxx,最大左字段和maxl,最大又字段和maxr,区间和sum,即可#include <bits/stdc++.h>#define ll long longusing namespac...原创 2019-08-09 13:42:53 · 148 阅读 · 0 评论 -
Mayor's posters POJ - 2528 (线段树区间更新,单点查询)
题目链接:https://cn.vjudge.net/problem/POJ-2528题意:依次给你n区间,按照先来后到的方式,当前区间回覆盖之前的区间,求表面能看到的区间种类有多少个线段树区间更新,单点查询更新完所有区间之后,n次单点查询,为了pushdown#include <algorithm>#include <iostream>#includ...原创 2019-08-18 23:13:26 · 129 阅读 · 0 评论 -
2019hdu暑假多校训练赛第六场 HDU - 6638 (线段树求最大子段和)
题目传送门题意:平面内n个点,让你选择平面内一个任意长宽 的矩形,是的矩形内的点的权值和最大思路:由一维的区间最大字段和联想到这个二维的,这个就可以看做是n*(n-1)/2个 一维区间枚举x为左边界,对于每一个左边界,枚举他的又边界,对于每一个矩形,建权值线段树,当插入的点的x,不是左边界 的时候,需要进行查询。取最大值就好了#include <bits/stdc+...原创 2019-08-09 14:26:29 · 97 阅读 · 0 评论 -
ICPC亚洲区域赛网络预选赛 (银川网络重赛)Simple Data Structures (线段树,区间或,区间与,区间异或)
题目链接就不挂了,服务器受不了l r: Calculate the sum of current array elements on the segment [l,r], that is, count value a[l] + a[l+1] +...+a[r]. l r x: Apply the xor(^) operation of the given number x to eac...原创 2019-09-08 19:42:35 · 418 阅读 · 2 评论