
线段树
文章平均质量分 78
Ju_Ruo
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
20180305T1 【STARAS】poj2482
假定天空是一个平面,每个星星都有一个坐标(x,y),每颗星星都有一个亮度C,代表它的亮度。窗户是长方形的,有固定的长和宽,边平行于x轴和y轴。你的任务是告诉我如何摆放窗户,才能获得在窗口内所有星星的亮度总和最大值。注意,边框的星星不算。窗口可以被平移,但不允许旋转。输入在输入中有几个测试用例。每一行的第一行包含3个整数:n,w,h,表示星形的数目,矩形窗口的水平长度和垂直高度。然后N行如下,有3个...原创 2018-03-06 22:00:02 · 228 阅读 · 0 评论 -
20180305T3【bzoj1513】TET
给定一个矩阵,初始每个位置上的元素都是0,每次选择一个子矩形,将这个子矩形内的值修改为这个子矩形内的最大值+h,求最终所有位置上的最大值第一行输入D,S,N,就是长宽和操作数后面每行读入5个数,d,s,h,x,y,表示把(x,y),(x+d-1,y),(x,y+s-1),(x+d-1,y+s-1)为四顶点的子矩阵进行操作h就是题目描述里的h注意行列是从0开始数的这个题很明显可以看出是一个二维线段树...原创 2018-03-07 19:16:29 · 195 阅读 · 0 评论 -
SDOI2008校门外的区间
这道题作为前天的模拟赛题,考场上我在还剩一个半小时的情况下居然选择求稳打暴力,水过了40分,然后就坐看cansult和refun这俩dalaoAK...一开始我的想法是,把区间看成两点之间不包含端点的小区间和端点构成的集合,然后分开处理,这个做法可能暴力还是可以的,然而如果要用线段树的话,就要开两颗线段树正确做法应该是把每个点拆成三个点,)就是标记第一个点,】和【就是标记第二个点,(就是标记第三个...原创 2018-03-03 16:01:27 · 240 阅读 · 0 评论 -
[SDOI2009]HH的项链
dalao们都告诉我这是莫队板子题然而像我这种菜鸡肯定不会莫队啊题意简化一下就是静态求一个区间内数的种数我们记录pre[x],为数列中第x个数上次出现的位置,如果之前未出现过则为0所以显然区间【l,r】内pre[i](l<=i<=r)如果>=l的话就是重复的,这样对答案有贡献的就是pre[i]<=l-1的这样就转化为了一个二维数点,x轴为数列位置,y轴为pre值,原来数列中...原创 2018-03-04 17:23:45 · 282 阅读 · 0 评论 -
20180305T2[USACO5.5]矩形周长Picture
[USACO5.5]矩形周长Picture横线和竖线分两遍分别求用扫描线扫一遍,扫到一个地方先加边,再删边,这样每次操作对答案的贡献就是整个线段树覆盖区域长度前后的差值(绝对值),这样可以省去query函数这样题目就转化成了一个维护线段树,支持区间加,维护区间不为0的数的数量tree[root].len表示区间覆盖的长度,tree[root].col表示区间被完全覆盖的次数#include<...原创 2018-03-05 20:45:54 · 309 阅读 · 0 评论 -
[SDOI2009]虔诚的墓主人
这个题是今天上午模拟赛做的,考场上代码最后时间紧写得巨丑,所以改完以后还是巨丑80分做法这是考场上写的,然而数学实在太渣,不知道在模数下不能做除法,组合数部分写ci了组合数预处理首先都知道组合数是必须要处理的,然而这个题直接处理阶乘做组合数公式是不行的,因为模数下不能做除法。然后既然都要处理出来,又不需要O(1),可以用杨辉三角,如果普通的杨辉三角,可以做到3000*3000(其实组合数的处理决定...原创 2018-03-25 18:30:01 · 343 阅读 · 1 评论 -
王国LA4730
题意简化一下平面上有n个点(n<=100000,坐标<=一百万),两种操作,一种是选两点连边,二是问在某一y坐标上有几个联通块,以及这些联通块连接了多少个点总体思路是并查集+线段树,在并查集合并时维护线段树。开两棵线段树,一颗维护每个y坐标上的联通块上的点数目,一颗维护每个y坐标上的联通块数目注意这个题每个点的x坐标对答案没有影响,所以只记录一下高度就可以了并查集维护四个量,父亲,以此...原创 2018-04-03 19:41:11 · 197 阅读 · 0 评论