
线段树
文章平均质量分 60
Originum
勤能补拙。邮箱:originum@126.com
展开
-
HDU 6406 Taotao Picks Apples [ 线段树 + DP ]
题目链接:2018 Multi-University Training Contest 8 Taotao Picks Apples HDU - 6406题意概括:按顺序给出一些苹果的高度,只有当前苹果是第一个或者高度严格大于前一个时才会被摘。现在给出一些独立的询问,一次询问把位置 p 的高度改为 q , 问改变后可以摘几个苹果。数据范围: , ,,题解分析:这道题看...原创 2018-08-19 15:30:03 · 299 阅读 · 0 评论 -
线段树
概念:线段树是一棵完美二叉树,所有叶子的深度相同,并且每个节点要么是叶子要么是有 2 个儿子的树,树上的每个节点都维护一个区间 (最底层的节点退化到维护点) 。根是维护整个区间的,每个节点维护的是父亲的区间二等分后的其中一个子区间。由于其二叉树的结构,可以满足当有 n 个元素时,对区间的操作可以在 的时间内完成。因此,对于一些给出连续数据的问题,线段树可以在 内很快的实现修改和询问。...原创 2018-08-19 20:37:22 · 248 阅读 · 0 评论 -
ACM-ICPC 2018 徐州赛区网络预赛 H. Ryuji doesn't want to study [ 线段树 ]
题目链接:ACM-ICPC 2018 徐州赛区网络预赛 H. Ryuji doesn't want to study题意概括:对于一个序列,查询操作是给出一个区间[l, r],求还有单点修改序列的操作数据范围:题解分析:频繁的区间询问、区间修改,很明显就是线段树的题了对每个节点,维护三个变量sum : 存储该序列区间所有值的和 ans : 存储该序...原创 2018-09-10 23:46:53 · 347 阅读 · 0 评论 -
ZOJ 1610 Count the Colors [ 线段树 + 区间染色 ]
题目链接:POJ - 2528 Count the Colors题意概括:按顺序给出一些线段,后出现的线段会覆盖前出现线段的重叠部分。求剩下线段中,有哪些颜色,同时求出每种颜色线段数量数据范围:1 <= n <= 80000 <= x1 , x2 , c <= 8000题解分析:区间更新的问题,很明显应该用线段树来做,但是有很多细节要注意...原创 2018-10-05 20:41:20 · 405 阅读 · 2 评论 -
kuangbin线段树专题解析
赛前再巩固一下线段树,又做了一遍kuangbin线段树专题专题链接:kuangbin专题题目一览1. HDU 1166 敌兵布阵区间维护和,单点修改#include <stdio.h>using namespace std;const int MAXN=1e5 + 10;int origin[MAXN], tree[MAXN<<2];void p...原创 2018-10-07 00:01:26 · 1166 阅读 · 0 评论 -
离散化实现|bug分析及解决
离散化:对于一些应用实例,有时只会用到数据的相对大小,而不在意数据本身的大小例:在区间涂色问题中,依次给区间涂色,后涂色的区间会覆盖前区间。现在求剩下几种颜色可以发现,这个问题中,有用的就只是区间的相对位置关系,而不在于区间本身的大小。如:[1, 3] 涂白色,[6, 7] 涂黑色[1, 3] 涂白色,[10000006, 10000007] 涂黑色最后都只有两种颜色。但是...原创 2018-10-06 20:37:32 · 367 阅读 · 0 评论 -
POJ 2528 Mayor's posters [ 离散化 + 线段树 ]
题目链接:Mayor's posters POJ 2528题意概括:依次贴上 n 张海报,每张海报会覆盖一个区间。后贴上的海报会覆盖前贴的海报,问最后可以看见几张海报这里的区间不是拿两端点来维护的,是直接按单位最小区间来编号。如 [3, 5] 区间是由编号为 3、4、5的区间组成的数据范围:题解分析:其实就是一个区间涂色问题,能看见几张海报问的就是有几种颜色...原创 2018-10-06 16:52:46 · 379 阅读 · 0 评论