
线段树
楠先生
世界不会因为你的想法而改变,但你的想法会让你的世界发生改变。
展开
-
NYOJ 116 士兵杀敌(二)
士兵杀敌(二) 时间限制:1000 ms | 内存限制:65535 KB 难度:5 描述 南将军手下有N个士兵,分别编号1到N,这些士兵的杀敌数都是已知的。 小工是南将军手下的军师,南将军经常想知道第m号到第n号士兵的总杀敌数,请你帮助小工来回答南将军吧。 南将军的某次询问之后士兵i可能又杀敌q人,之后南将军再询问的时候,原创 2016-04-09 20:17:45 · 440 阅读 · 0 评论 -
线段树延迟标记精讲
一 概述 线段树,类似区间树,是一个完全二叉树,它在各个节点保存一条线段(数组中的一段子数组),主要用于高效解决连续区间的动态查询问题,由于二叉结构的特性,它基本能保持每个操作的复杂度为O(logn)。 线段树的每个节点表示一个区间,子节点则分别表示父节点的左右半区间,例如父亲的区间是[a,b],那么(c=(a+b)/2)左儿子的区间是[a,c],右儿子的区间是[c+1,b]。转载 2016-03-29 13:58:23 · 1248 阅读 · 0 评论 -
线段树
算法训练 操作格子 时间限制:1.0s 内存限制:256.0MB 问题描述 有n个格子,从左到右放成一排,编号为1-n。 共有m次操作,有3种操作类型: 1.修改一个格子的权值, 2.求连续一段格子权值和, 3.求连续一段格子的最大值。 对于每个2、3操作输出你所求出的结果。 输入格式 第一行2个整数n,m转载 2016-03-07 21:01:39 · 316 阅读 · 0 评论