码迷,mamicode.com
首页 >  
搜索关键字:线段树    ( 9365个结果
【POJ】2828 Buy Tickets(线段树+特殊的技巧/splay)
http://poj.org/problem?id=2828一开始敲了个splay,直接模拟。tle了。。常数太大。。好吧,说是用线段树。。而且思想很拽。。(貌似很久以前写过貌似的,,)我们线段树维护的区间不再是人了。。而是这个区间剩余的的座位。。比如我现在要坐第一张,但是人已经坐了,即这个区间已经...
分类:其他好文   时间:2014-08-28 20:59:26    阅读次数:1012
HDU 1828 / POJ 1177 Picture --线段树求矩形周长并
题意:给n个矩形,求矩形周长并解法:跟求矩形面积并差不多,不过线段树节点记录的为:len: 此区间线段长度cover: 此区间是否被整个覆盖lmark,rmark: 此区间左右端点是否被覆盖num: 此区间分离开的线段的条数重点在转移的地方,不难理解。代码:#include #include #in...
分类:其他好文   时间:2014-08-28 13:09:09    阅读次数:225
线段树+离散化的资料(写的很好)
1、 线段树是二叉树,且必定是平衡二叉树,但不一定是完全二叉树。2、 对于区间[a,b],令mid=(a+b)/2,则其左子树为[a,mid],右子树为[mid+1,b],当a==b时,该区间为线段树的叶子,无需继续往下划分。3、 线段树虽然不是完全二叉树,但是可以用完全二叉树的方式去构造并存储它,...
分类:其他好文   时间:2014-08-28 11:14:29    阅读次数:194
UVA 11983 Weird Advertisement --线段树求矩形问题
题意:给出n个矩形,求矩形中被覆盖K次以上的面积的和。解法:整体与求矩形面积并差不多,不过在更新pushup改变len的时候,要有一层循环,来更新tree[rt].len[i],其中tree[rt].len[i]表示覆盖次数大于等于i的线段长度,以便求面积,最后只要每次都用tree[1].len[K...
分类:其他好文   时间:2014-08-28 11:08:19    阅读次数:315
uva 1455 - Kingdom(并查集+线段树)
题目链接:uva 1455 - Kingdom 题目大意:平面上又n个城市,初始时城市之间没有任何双向道路相连,要求一次执行指令。 road A B :在城市A和城市B之间连接一条双向道路line C:询问一条y=C的水平线上穿过多少州和这些州总共有多少城市。 一个联通分量算一个州,C保证为小数部分为0.5的实数。 解题思路:线段树维护每个位置上州和城市的个数,并查集维护哪些城...
分类:其他好文   时间:2014-08-28 00:55:48    阅读次数:297
FZU2105 线段树 (按位操作)
题目:Given N integers A={A[0],A[1],...,A[N-1]}. Here we have some operations:(元素和操作元素 2 #include 3 #include 4 #include 5 #include 6 #define mem...
分类:其他好文   时间:2014-08-27 21:53:28    阅读次数:355
HDU 4027 Can you answer these queries? (线段树)
题意: 给出一排敌军的血量,每次攻击都能将范围内的敌军血量变为原来血量的算术平方根(下取整),并询问范围内敌军的血量和。 分析: 显然的线段树,但是似乎不太好设计lazy标记啊,我们想一想算术平方根,sqrt(1)=1,且64位整数范围内最多6次就变到1了,那么只要区间内的数都为1,我就不用更新这个区间了,所以每次更新都更新到叶子结点,维护区间和就行了。数据里没有0,不过X>Y这种trick有意思吗?...
分类:其他好文   时间:2014-08-27 20:36:58    阅读次数:266
uva 11983 - Weird Advertisement(线段树)
题目链接:uva 11983 - Weird Advertisement 题目大意:给定n个矩形,问说有多少区域的面积被覆盖k次以上。 解题思路:将每个矩形差分成两条线段,一段为添加覆盖值1,一段为减少覆盖值1,同时记录两段的高度(横坐标)。然后对纵坐标离散化建立线段树,然后对线段按照高度排序,维护整段区间中覆盖度大于K的长度,乘上高度上的范围即可。 #include #inclu...
分类:其他好文   时间:2014-08-27 18:52:48    阅读次数:280
UVA 11992 Fast Matrix Operations
每一行都建一个线段树。。。。 Fast Matrix Operations There is a matrix containing at most 106 elements divided into r rows and c columns. Each element has a location (x,y) where 1 1 x1 y1 x2 y2 v ...
分类:其他好文   时间:2014-08-27 18:50:58    阅读次数:199
uva 1492 - Adding New Machine(线段树)
题目链接:uva 1492 - Adding New Machine 题目大意:在一个R?C矩阵上有N台旧的机器,给定每个机器的占地,现在要添加一台1?M的机器,问有多少种摆放方法。 解题思路:问题可以转化成矩形覆盖问题,对于每台旧的机器,假设考虑对应每个位置向右放,那么左边的M-1个位置是不能放的,以及右边界左边的M-1个位置。用线段树解决矩形覆盖,x,y坐标分别处理一次。注意M=1...
分类:其他好文   时间:2014-08-27 18:47:18    阅读次数:274
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!