随笔分类 - 线段树
摘要:题意: 给出一个序列,每个点都有货物其价格是周期变化的,只能从起点走向终点,每走一个点经过一天,不能再点上停留,给出起点终点问可获得的最大价值。 思路:: 线段树维护 Max , Min 和 右子树的Max 左子树Min 的最大值(st) 但这样记录答案只是每个子树上的的答案,所以在查询时,还需要维
阅读全文
摘要:题解+扫描线讲解:https://blog.csdn.net/u013480600/article/details/22548393
阅读全文
摘要:建立两个线段树,一个存当前年份的产量,一个存每年多算了多少产量。 最后答案 ans=当前产量*年数-多算的产量 ps:对于多算的产量,每年只能在一段连续的区间里加1,也就是说对于每一个点来说如果当前年份+1,那么当前年份多算了当年年份的数量。 一个点 初始为1 产量 1 1 1 2 2 3 年份 1
阅读全文
摘要:blem Description 玄黄最近发明了一个神奇的函数: Xh(x)=3*( ∑(x的每一位) )+1 ,x为自然数。 现在你面前有n个自然数,玄黄现在要求你完成两种操作 。 1、帮玄黄求出这n个数中,区间 [l, r] 的和,并把答案告诉玄黄 。 2、帮玄黄把区间 [l, r] 中的每一个
阅读全文
摘要:题解思路:线段树维护,用矩阵求斐波那契值,tree和lazy都要存成矩阵来降低时间复杂度#include#include#include#include#include#include#include#include#include#define lson l,mid...
阅读全文
摘要:题解思路:线段树用来记录空花瓶的个数对于每次添加花的操作 二分查找L R删除花的个数用 l-r+1-区间空花瓶数#include#include#include#include#include#include#include#include#define lson l...
阅读全文
摘要:/** 有3种改变操作,需要3个lazy来记录; 每种操作之间有优先关系 change>mul>add; 传递时按优先关系进行 记录p= 1 2 3使得sum即可 注意取模*/#include#include#include#inc...
阅读全文
摘要:题目大意:一段长为n的区间,m此操作,Q为查询x所在区间的最大长度,D为将X破坏(不连通),R为将最后一个破坏的点修复(连通)。题解思路:线段树,维护3个值。1.区间前缀长度2.区间后缀长度3.区间里最长连续区间用栈存储一下破坏的点,线段树的更新维护写在代码里;100...
阅读全文
摘要:题目大意:一段区间,m此操作,0为区间里的数字开方,1为查询区间和。 题解思路:线段树,开方操作无法传递,只能进行单点操作,但不优化的化会t;想了两种优化,都可以过。注意此题的l r大小不确定!第一种:对于ll以内的数,最多开6次方就会到达1,加一个标记数组,如果开放...
阅读全文
摘要:题目大意查询一个区间输出最大值间最小值的差用线段树写需要剪枝...本来明明是一道快乐的水题..却t了就用st写了..线段树#include#include#include#include#include#include#include#include#includec...
阅读全文
摘要:题目大意:给你一段长度为 8000 的绳子,n 次操作,每次将[ l r ]区间染色为 c ,染色会覆盖掉之前的染色,所有数字不超过8000,统计最后的颜色和出现的不连续区间的个数。按颜色顺序输出。 题解思路:线段数区间染色,因为是区间染色,所以在每个2点之间又加了...
阅读全文
摘要:题目大意:在一个长度为1e7单位的板子上贴海报,后贴上的会覆盖原来贴上的,问最后能看到几个海报(露出部分也可以)思路因为板子是1e7,但给出的海报个数为1e4,所以考虑离散化,普通的离散化是会漏掉颜色,比如 1 3 1 10 1 4 7 10,所以要在长度大于1区间之...
阅读全文
浙公网安备 33010602011771号