树状数组和线段树
文章平均质量分 60
nixinyis
这个作者很懒,什么都没留下…
展开
-
线段树专题
按照习惯,这里只是对我这几天所写的线段树题目的总结hdu 1166 排兵布阵 点增减#include<cstdio>#define lson l,m,rt<<1 #define rson m+1,r,rt<<1|1const int maxn=55555; int sum[maxn<<2]; void push(int rt) { sum[rt]=sum[rt<<1]+sum[rt<<1|1]原创 2017-01-16 20:07:08 · 260 阅读 · 0 评论 -
【BZOJ 1513】Tet-Tetris 3D【二维线段树】
Description在新游戏中你将知道落下的立方体信息以及位置,你的任务就是回答所有立方体落下后最高的方块的高度.所有的立方体在下落过程中都是垂直的并且不会旋转.平板左下角坐标为原点,并且平行于坐标轴.Solution二维线段树板子题 同时两层树之间的信息不能相互传递。Code#include<cstdio> #include<cstring> #include<algorithm>#defin原创 2017-04-13 17:25:31 · 412 阅读 · 0 评论 -
【BZOJ 4491】我也不知道题目名字是什么【差分+线段树维护】
【前言】又来切水题了) -__-。。。Description给定一个序列A[i],每次询问l,r,求[l,r]内最长子串,使得该子串为不上升子串或不下降子串(n < 50000)Input第一行n,表示A数组有多少元素 接下来一行为n个整数A[i] 接下来一个整数Q,表示询问数量 接下来Q行,每行2个整数l,rOutput对于每个询问,求[l,r]内最长子串,使得该子串为不上升子串或不下降子串原创 2017-04-03 20:21:48 · 687 阅读 · 0 评论 -
线段树操作中的一些预判方法【UOJ 228】【codeforces 438D】
作为一个傻逼题,我……我竟然提交了n次!!!题意给出一个长度为 nn 的数列 AA,接下来有 mm 次操作,操作有三种:区间加,区间开方,区间求和。题解感觉很水。 网上大神们的博客里说,对于一次区间开根: 设最大值为maxn,最小值为minn,如果maxn-minn=sqrt(maxn)-sqrt(minn),就可以看成区间减法。(因为减小的值是一样的) 但是,我以为是在一开始判断一次原创 2017-03-24 20:33:37 · 535 阅读 · 0 评论 -
【codeforces 777E】Hanoi Factory【动态规划+线段树】
E. Hanoi Factory time limit per test 1 second memory limit per test 256 megabytes input standard input output standard output Of course you have heard the famous task ab原创 2017-03-05 12:26:41 · 422 阅读 · 0 评论 -
【BZOJ 1858】【SCOI 2010】序列操作【区间线段树】
Descriptionlxhgww最近收到了一个01序列,序列里面包含了n个数,这些数要么是0,要么是1,现在对于这个序列有五种变换操作和询问操作: 0 a b 把[a, b]区间内的所有数全变成0 1 a b 把[a, b]区间内的所有数全变成1 2 a b 把[a,b]区间内的所有数全部取反,也就是说把所有的0变成1,把所有的1变成0 3 a b 询问[a, b]区间内总共有多少个1 4 a b原创 2017-03-05 12:08:10 · 269 阅读 · 0 评论 -
【BZOJ 3132】上帝造题的七分钟【二维树状数组】
Description“第一分钟,X说,要有矩阵,于是便有了一个里面写满了0的n×m矩阵。 第二分钟,L说,要能修改,于是便有了将左上角为(a,b),右下角为(c,d)的一个矩形区域内的全部数字加上一个值的操作。 第三分钟,k说,要能查询,于是便有了求给定矩形区域内的全部数字和的操作。 第四分钟,彩虹喵说,要基于二叉树的数据结构,于是便有了数据范围。 第五分钟,和雪说,要有耐心,于是便有了时原创 2017-02-23 20:05:03 · 348 阅读 · 0 评论 -
【BZOJ 3211】花神游历各国 &【 线段树区间开根】
DescriptionInputOutput每次x=1时,每行一个整数,表示这次旅行的开心度Sample Input4 1 100 5 5 5 1 1 2 2 1 2 1 1 2 2 2 3 1 1 4Sample Output101 11 11HINT对于100%的数据, n ≤ 100000,m≤200000 ,data[i]非负且小于10^9题解对线段树区间开根,听说很简单啊原创 2017-02-21 21:01:12 · 419 阅读 · 0 评论 -
【BZOJ 1012】【JSOI 2008】最大数
Description 现在请求你维护一个数列,要求提供以下两种操作:1、 查询操作。语法:Q L 功能:查询当前数列中末尾L 个数中的最大的数,并输出这个数的值。限制:L不超过当前数列的长度。2、 插入操作。语法:A n 功能:将n加 上t,其中t是最近一次查询操作的答案(如果还未执行过查询操作,则t=0),并将所得结果对一个固定的常数D取 模,将所得答案插入到数列的末尾。限制:n是非负整原创 2017-02-09 20:41:31 · 241 阅读 · 0 评论 -
LA 4329
题目链接:http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=13895 题目大意:一条街上住n个乒乓球手,每个人技能值不同,当一个人住在两个人之间,且技能值在两人之间时,这三个人就会打比赛了(中间这个人当裁判),问能打多少场比赛? 分析:当第i个人当裁判时, 假设前a[1]~a[i-1]中有c[i]个人比a[i]小原创 2016-01-24 16:39:18 · 411 阅读 · 0 评论 -
BZOJ 1067[SCOI 2007]
1067: [SCOI2007]降雨量 Time Limit: 1 Sec Memory Limit: 162 MB Submit: 3301 Solved: 850 [Submit][Status][Discuss] Description 我们常常会说这样的话:“X年是自Y年以来降雨量最多的”。它的含义是X年的降雨量不超过Y年,且对于任意Y<Z<X,Z年的降雨量严格小于X年。原创 2016-03-26 21:22:40 · 229 阅读 · 0 评论 -
【BZOJ 3306】树【LCA、DFS序、线段树】
Description给定一棵大小为 n 的有根点权树,支持以下操作: 1、 换根 2、 修改点权 3、 查询子树最小值 Input 第一行两个整数 n, Q ,分别表示树的大小和操作数。 接下来n行,每行两个整数f,v,第i+1行的两个数表示点i的父亲和点i的权。保证f < i。如 果f = 0,那么i为根。输入数据保证只有i = 1时,f = 0。 接下来原创 2017-04-13 20:51:16 · 523 阅读 · 0 评论