摘要: Monitor HDU 6514 二维差分入门学习 题意 小腾有$n m$的田地,但是有小偷来偷东西,在一片矩形区域上,有一部分区域是监控可以覆盖到的,这部分区域由一个或多个包含于该矩形区域的小矩形构成;现在给你另一个包含在该矩形区域的小矩形A,问你这个小矩形能否被监控完全覆盖。 解题思路 这个题可 阅读全文
posted @ 2019-08-22 16:47 ALKING1001 阅读(272) 评论(0) 推荐(0) 编辑
摘要: Atlantis poj1151 线段树扫描线 题意 题目给了n个矩形,每个矩形给了 左下角 和 右上角 的坐标,矩形可能会重叠,求的是矩形最后的面积。 题解思路 这个是我线段树扫描线的第一题,听了学长的讲解,仔细研读了学长的代码,也算初步入门。 这里我们竖着的扫描线,从左到右来进行扫描的。 线段树 阅读全文
posted @ 2019-08-20 16:51 ALKING1001 阅读(102) 评论(0) 推荐(0) 编辑
摘要: Snacks HDU 5692 dfs序列+线段树 题意 百度科技园内有n个零食机,零食机之间通过n−1条路相互连通。每个零食机都有一个值v,表示为小度熊提供零食的价值。 由于零食被频繁的消耗和补充,零食机的价值v会时常发生变化。小度熊只能从编号为0的零食机出发,并且每个零食机至多经过一次。另外,小 阅读全文
posted @ 2019-08-20 16:04 ALKING1001 阅读(133) 评论(0) 推荐(0) 编辑
摘要: Weak Pair (dfs+树状数组) 题意 这个题目是要求:一颗树上,有n个节点,给出每个节点的权值。另外给出一个值k,问有多少对节点满足: $power[u] power[v] include include include include using namespace std; typed 阅读全文
posted @ 2019-08-20 00:30 ALKING1001 阅读(191) 评论(1) 推荐(0) 编辑
摘要: ZOJ 1610 线段树+两种查询方法(弥补我线段树区间填充的短板) 题意 题意:给一个n,代表n次操作,接下来每次操作表示把[l,r]区间的线段涂成k的颜色其中,l,r,k的范围都是0到8000 这题比较坑的是不能拿n建树,不然就会segmentation fault,我也是错了好多遍看的博客才知 阅读全文
posted @ 2019-08-09 11:37 ALKING1001 阅读(141) 评论(0) 推荐(0) 编辑
摘要: Balanced Lineup poj3264 线段树 题意 一串数,求出某个区间的最大值和最小值之间的差 解题思路 使用线段树,来维护最大值和最小值,使用两个查询函数,一个查区间最大值,一个查区间最小值,然后做差就好了,基本上就是线段树模板题 代码实现 cpp include include in 阅读全文
posted @ 2019-08-07 17:33 ALKING1001 阅读(95) 评论(0) 推荐(0) 编辑
摘要: Billboard 题解 hdu2795 题意 有个广告牌,上面需要依次贴广告,广告的高度均为1,但是宽度不同,每次都想贴在最靠左上的位置,按照顺序进行广告的话,输出每个广告位于广告牌的高度。 解题思路 使用线段树,来维护区间最大值,这样我们每次查找的时候都先判断上面点的最大值是不是大于广告的宽度, 阅读全文
posted @ 2019-08-07 17:27 ALKING1001 阅读(205) 评论(0) 推荐(0) 编辑
摘要: Count Color poj2777 线段树 题意 有一个长木板,现在往上面在一定区间内刷颜色,后来刷的颜色会掩盖掉前面刷的颜色,问每次一定区间内可以看到多少种颜色。 解题思路 这里使用线段树,因为刷颜色可以看作是区间修改,使用lazy标记区间的颜色种类,下传标记后,当前节点的lazy标记就标记为 阅读全文
posted @ 2019-08-07 17:14 ALKING1001 阅读(144) 评论(0) 推荐(0) 编辑
摘要: D query SPOJ 树状数组+离线/莫队算法 题意 有一串正数,求一定区间中有多少个不同的数 解题思路——树状数组 说明一下,树状数组开始全部是零。 首先,我们存下所有需要查询的区间,然后根据右端点进行从小到大的排序。然后依次处理这个区间中的答案,仔细想一下,后面的区间答案不会受到影响。 怎么 阅读全文
posted @ 2019-08-07 11:49 ALKING1001 阅读(229) 评论(0) 推荐(0) 编辑
摘要: Poj 3468 A Simple Problem with Integers 线段树 题意 你有n个数。现在有两种操作,一种是使区间A到B上每个数加C,另一个是求区间A到B之间数的和。 题解思路 这个题目应该使用线段树来进行求解,至于为什么不能单个求解呢,因为会超时,使用前缀和的话,无法满足修改的 阅读全文
posted @ 2019-08-06 11:24 ALKING1001 阅读(147) 评论(0) 推荐(1) 编辑