题意:有n个由小木块组成的长条木块要掉下来,给出木块的左右区间,然后有给了m个木板的左右区间和高度用来接住木块,因为木块是由小木块接触组成的,也就是木板可以接住一部分的木块,剩下的会继续掉落,问最后每个木板上有多少个小木块。
题解:这道题用线段树可解,还有另一个比较机智的做法。
先说线段树,左右区间到3×1e7,如果用线段树解决需要离散化。把木板从低到高排序后用一个线段树flag维护每个区间对应...
分类:
其他好文 时间:
2015-08-21 21:33:01
阅读次数:
184
题意:假设货架上从左到右摆放了N种商品,并且依次标号为1到N,其中标号为i的商品的价格为Pi。小Hi的每次操作分为两种可能,第一种是修改价格——小Hi给出一段区间[L, R]和一个新的价格NewP,所有标号在这段区间中的商品的价格都变成NewP。第二种操作是询问——小Hi给出一段区间[L, R].....
分类:
其他好文 时间:
2015-08-19 22:40:03
阅读次数:
127
题意:有一个黑板上贴海报,给出每个海报在黑板上的覆盖区间为l r,问最后多少个海报是可见的。
题解:因为l r取值到1e7,肯定是要离散化的,但普通的离散化会出问题,比如[1,10],[1,4],[4,6]普通得到答案是2,但其实是3,改进的离散化方法如果两个数字相差大于1,就在中间补一个数字。#include
#include
#include <cst...
分类:
其他好文 时间:
2015-08-18 21:23:16
阅读次数:
99
题意:
给出一个数组a,叫你每次询问如下等式的值。
f(l,r)=∑ri=l∑rj=igcd(ai,ai+1....aj)f(l,r)=\sum_{i=l}^{r}\sum_{j=i}^{r}gcd(a_i,a_{i+1}....a_{j})
解析:
思考了很久终于理解了学长的思路
给你一个序列,这个序列的子序列gcd的个数不会超过logN个(N为每个数字,最大能取到的范围)...
分类:
其他好文 时间:
2015-08-16 10:48:37
阅读次数:
103
今天集训队打比赛的一道题,很明显是个线段树,我们队照着lrj蓝书敲了一通,机智的将修改值和加和改成了位运算:|=
但是好像哪里出了点小问题,就是不对,赛后又水了一遍,竟然过了。。。发现还是lrj的书好啊,市面上的模板一点也不好用,连区间修改都没有 。
等集训完了要静心好好系统的学习一下线段树 。 多看多刷lrj的书 。
细节参见代码:
#include
using namespace ...
分类:
其他好文 时间:
2015-08-14 21:26:46
阅读次数:
153
HDU - 3584
Cube
Time Limit: 1000MS
Memory Limit: 65536KB
64bit IO Format: %I64d & %I64u
Submit Status
Description
Given an N*N*N cube A, whose elements are either ...
分类:
编程语言 时间:
2015-08-08 19:57:29
阅读次数:
131
HDU - 1556
Color the ball
Time Limit: 3000MS
Memory Limit: 32768KB
64bit IO Format: %I64d & %I64u
Submit Status
Description
N个气球排成一排,从左到右依次编号为1,2,3....N.每次给定2个整数a ...
分类:
编程语言 时间:
2015-08-08 19:54:39
阅读次数:
137
【codevs1690】开关灯2014年2月15日4930题目描述Description YYX家门前的街上有N(2 OOXX -> OXOO -> 询问1~3 -> OOXX -> 询问1~4代码 1 #include 2 #include 3 #include 4 #includ...
分类:
其他好文 时间:
2015-08-04 02:01:09
阅读次数:
149
【codevs1191】数轴染色2014年2月15日4317题目描述Description在一条数轴上有N个点,分别是1~N。一开始所有的点都被染成黑色。接着我们进行M次操作,第i次操作将[Li,Ri]这些点染成白色。请输出每个操作执行后剩余黑色点的个数。输入描述Input Description输...
分类:
其他好文 时间:
2015-08-03 22:16:43
阅读次数:
114
hdu 1698 Just a Hook题意: 给你一链子,这天链子由金银铜三种钩子组成,每种钩子都有自己的价值,起初,这条钩子全部由铜钩子组成,给你两个数n(钩子的个数),Q(操作的个数)每次操作就是将给定区间里的数变成某种钩子,求这条链子的总价值。
分析: 线段树模版题,处理好延迟标记即可。
代码:#include
#include
#inclu...
分类:
其他好文 时间:
2015-08-02 11:51:29
阅读次数:
134