![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
线段树
文章平均质量分 52
追风者_
要我自我介绍,挺秃然的
展开
-
2021HDU多校 1008 Lawn of the Dead 线段树
思路:按照题意,如果一个格子的上方一个格子和左边一个格子都走不了,那这个格子就走不了,一旦一个格子走的了,其下面的格子都走的了,右边的格子也都走的了(地雷除外)。那么考虑用线段树维护一行中能走到的格子和走不到的,走得到的为0,走不到的为1。那么询问区间[l,r]看最左边的0在哪,这个0一路到r的格子就都可以走。询问的区间就是一行里面每两个地雷之间的区间。AC代码:#include<iostream>#include<string>#include<algorith原创 2021-07-31 20:02:01 · 199 阅读 · 0 评论 -
E2. Array and Segments (Hard version) 思维 线段树区间最值维护
题意:给你若干区间,选出若干区间,对其区间内元素值-1,使得最后序列最大-最小的值最大思路:首先一点,枚举每个aia_iai当最大值,那么所有不包括i这个位置的区间都选上,让它们去减。然后询问一次区间最小值mi,a[i]-mi就是当前枚举得到的一个解,每次比较更新答案即可。上面的操作可以用线段树维护,我们可以先对所有区间-1,同时预处理出以i位置为区间L,R端点的区间,然后遍历1->n的点,每一次,把以i这个位置为左端点的区间+1回来,然后询问区间最值,完了后,对以i这个点为右端点的区间再-1原创 2021-07-30 16:34:14 · 119 阅读 · 0 评论 -
【牛客15周算法周赛】 ABD题解
A:数列下标题意:找出每个位置右边第一个比自身大的位置思路:单调栈模板题。然而这个题目数据水,竟然暴力都能过AC代码:#include<iostream>#include<string>#include<algorithm>#include<cstdio>#include<cstring>#include<cmath>#include<map>#include <queue>#includ原创 2020-07-15 00:38:19 · 141 阅读 · 0 评论 -
【POJ Count Color】 线段树 区间查询
Chosen Problem Solving and Program design as an optional course, you are required to solve all kinds of problems. Here, we get a new problem.There is a very long board with length L centimeter, L is ...原创 2020-04-09 22:26:41 · 146 阅读 · 0 评论 -
【HDU 1540】 Tunnel Warfare 树状数组 前后缀
Problem DescriptionDuring the War of Resistance Against Japan, tunnel warfare was carried out extensively in the vast areas of north China Plain. Generally speaking, villages connected by tunnels lay...原创 2020-04-08 00:39:41 · 134 阅读 · 0 评论 -
【HDU 2795】 Billboard 线段树 区间最值 详解
Problem DescriptionAt the entrance to the university, there is a huge rectangular billboard of size h*w (h is its height and w is its width). The board is the place where all possible announcements a...原创 2020-04-07 19:04:56 · 366 阅读 · 0 评论 -
【HDU 1394】 Minimum Inversion Number 树状数组 逆序对 详解
Problem DescriptionThe inversion number of a given number sequence a1, a2, …, an is the number of pairs (ai, aj) that satisfy i < j and ai > aj.For a given sequence of numbers a1, a2, …, an, i...原创 2020-04-07 14:23:24 · 240 阅读 · 0 评论 -
【HDU 1698】 Just a Hook 线段树 + pushdown 懒惰标记 成段更新
Problem DescriptionIn the game of DotA, Pudge’s meat hook is actually the most horrible thing for most of the heroes. The hook is made up of several consecutive metallic sticks which are of the same ...原创 2020-04-05 00:57:20 · 186 阅读 · 0 评论 -
【洛谷 P3372】【模板】线段树 1 pushdown 操作
题目描述如题,已知一个数列,你需要进行下面两种操作:将某区间每一个数加上 kk。求出某区间每一个数的和。输入格式第一行包含两个整数 n, mn,m,分别表示该数列数字的个数和操作的总个数。第二行包含 nn 个用空格分隔的整数,其中第 ii 个数字表示数列第 ii 项的初始值。接下来 mm 行每行包含 33 或 44 个整数,表示一个操作,具体如下:1 x y k:将区间 [x, y...原创 2020-03-25 12:35:13 · 224 阅读 · 2 评论 -
【线段树】 个人对线段树的特点、作用以及实现的理解(从为什么要用到怎么用)
今天刚接触这种数据结构,学完后把自己的思路整理一下,这篇博客就当做总结吧,有错误日后发现了修改。分界线为什么要用这种数据结构?现在,就当我们还没听过这种数据结构,也不知道它的作用是什么,我们来思考以下几个问题。现在我有一串数组,我要实现下面两个操作:1.查询:我想知道L–R区间内的元素的和是多少。2.更新:我要实现更新某一下标对应元素的值。以上两个步骤会交叉进行多次。那么,以我们现...原创 2020-02-28 16:11:23 · 1717 阅读 · 3 评论