随笔分类 -  线段树

bzoj1012 最大数maxnumber(线段树)
摘要:题意: Description 现在请求你维护一个数列,要求提供以下两种操作:1、 查询操作。语法:Q L 功能:查询当前数列中末尾L 个数中的最大的数,并输出这个数的值。限制:L不超过当前数列的长度。2、 插入操作。语法:A n 功能:将n加 上t,其中t是最近一次查询操作的答案(如果还未执行过查 阅读全文

posted @ 2016-09-08 19:52 恶devil魔 阅读(192) 评论(0) 推荐(0)

POJ2887 Big String(块状数组)
摘要:参考:http://blog.csdn.net/htt_h/article/details/44862813 题意: 给你一个不超过1e6的字符串,和不超过2000次的操作 操作分为两种: 1.将一个字符插入到某个位置的前面 2.询问当前位置的字符 思路: 学了一发块状数组,就是把1e6的原串分为1 阅读全文

posted @ 2016-07-30 16:58 恶devil魔 阅读(751) 评论(0) 推荐(0)

SDUTOJ1755 装备合成(dfs序+线段树)
摘要:题目描述 小白很喜欢玩儿LOL,但是无奈自己是个坑货,特别是在装备的选择和合成上,总是站在泉水里为选装备而浪费时间。现在小白试图解决这个问题,为了使问题简单化,我们把游戏中的装备合成规则简化如下: (1)装备的合成关系构成一棵合成关系树,如图(a)所示,装备的下级装备叫合成小件,直接连接的叫直接合成 阅读全文

posted @ 2016-05-31 10:59 恶devil魔 阅读(358) 评论(0) 推荐(0)

SDUTOJ2880 Devour Magic(线段树两重延迟标记)
摘要:题意: 每个点能量每秒加1 按时间顺序给你N组时间+区间 表示在时间t时取走区间内的能量 问取走了多少能量 思路: 区间修改区间查询 加能量数延迟一下 去走后延迟一下 用两个flag保存延迟状态 阅读全文

posted @ 2016-05-14 17:24 恶devil魔 阅读(176) 评论(0) 推荐(0)

SDUSTOJ 1796 哆啦A梦的军队(线段树维护前缀位置)
摘要:Description 在2050年机器人战争爆发,聪明的机器猫为了帮助大雄打赢这场战 争,从自己口袋里掏出了机器人战棋,每一个战棋都可以成为一名战士,哆啦A梦决定给他们整整队,哆啦A梦发现第 i 个位置的战士编号为 Ai(显然 A 是一个排列)。经过计算,哆啦A梦发现,让第 i 个位置的战士编号为 阅读全文

posted @ 2016-04-26 13:12 恶devil魔 阅读(384) 评论(0) 推荐(0)

FZU1608(线段树成段更新,区间求和pushdown延迟标记结构体版)
摘要:题意:给了你一些区间,x,y,第三个参数w是效率,代表这段时间他的单位时间效率,效率总 和就是 (y-x)*w,然后有的时间段会被重复啊,比如前面给了1,4,1,后面又给了2,4,3他们为了是的时间段1,4的效率总和最大肯定是选择 2,4区间的效率值选择3,意思就是后面出现更好的情况就覆盖前面的,问... 阅读全文

posted @ 2015-11-01 11:39 恶devil魔 阅读(446) 评论(0) 推荐(0)

POJ2667 Hotel(线段树区间合并)
摘要:这类题目会询问区间中满足条件的连续最长区间,所以PushUp的时候需要对左右儿子的区间进行合并题意:1 a:询问是不是有连续长度为a的空房间,有的话住进最左边2 a b:将[a,a+b-1]的房间清空思路:记录区间中最长的空房间线段树操作:update:区间替换 query:询问满足条件的最左断点#... 阅读全文

posted @ 2015-08-22 12:17 恶devil魔

POJ2528 Mayor's posters(线段树成段替换,区间查询,离散化简单hash)
摘要:题意:在墙上贴海报,海报可以互相覆盖,问最后可以看见几张海报思路:这题数据范围很大,直接搞超时+超内存,需要离散化:离散化简单的来说就是只取我们需要的值来用,比如说区间[1000,2000],[1990,2012] 我们用不到[-∞,999][1001,1989][1991,1999][2001,2... 阅读全文

posted @ 2015-08-21 09:53 恶devil魔

POJ3468 A Simple Problem with Integers(线段树成段增减,区间求和)
摘要:题意:一个数列,每次操作可以是将某区间数字都加上一个相同的整数,也可以是询问一个区间中所有数字的和。(这里区间指的是数列中连续的若干个数)对每次询问给出结果。#include #include #include #include #include #include #include using na... 阅读全文

posted @ 2015-08-21 09:16 恶devil魔

HDU1698 Just a Hook(线段树成段替换、区间求和,延迟标记的应用)
摘要:题意:胖子有一条大jb,大JB由n个小JB组成,每次操作将一个区间的小JB变成金银铜三者之一,最后取出所有区间的JB总价值思路:和刷气球差不多意思了,简单的区间更新,无需更新到叶子节点,防止超时#include #include #include #include #include #include... 阅读全文

posted @ 2015-08-20 22:06 恶devil魔

HDU2795 Billboard(线段树基础题单节点更新区间查询)
摘要:题意:h*w的木板,放进一些1*L的物品,求每次放空间能容纳且最上边的位子思路:每次找到最大值的位子,然后减去L线段树功能:query:区间求最大值的位子(直接把update的操作在query里做了)#include #include #include #include #include #incl... 阅读全文

posted @ 2015-08-20 21:35 恶devil魔

HDU1754 I Hate It(线段树基础题单节点更新区间查询)
摘要:这题用树状数组写要简单很多,因为我学习线段树,找了这个题入门。。#include #include #include #include #include #include #include using namespace std;#define M 200005#define ls node>1; ... 阅读全文

posted @ 2015-08-20 21:18 恶devil魔

HDU1166 敌兵布阵(线段树基础题单节点更新区间查询)
摘要:这题用树状数组写要简单很多,因为我学习线段树,找了这个题入门。。#include #include #include #include #include #include #include using namespace std;#define M 50005#define ls node>1; ... 阅读全文

posted @ 2015-08-20 11:25 恶devil魔

线段树详解
摘要:参考 http://blog.csdn.net/metalseed/article/details/8039326 一:线段树基本概念1:概述线段树,类似区间树,是一个完全二叉树,它在各个节点保存一条线段(数组中的一段子数组),主要用于高效解决连续区间的动态查询问题,由于二叉结构的特性,它基本能保持... 阅读全文

posted @ 2015-08-20 10:16 恶devil魔

导航