刚开始看到题目,想用memmove偷懒,结果TLE,后来查了查,才发现用memmove也是O(n^2)的复杂度。。。 在网上找了AC代码,还是没怎么看懂。 就知道是逆序遍历的,线段树结点存储的是当前区域的空位置数量。 关键是update函数中的代码看的不是很懂 ...
POJ Buy Tickets 题意:插队问题 关键:如何插入这几个节点,每个节点储存什么信息。 类型:很基本的单点更新线段树 思路:这题想到了就水了,数据逆着插入,最先插入的一个数据的位置明显是题目给定的位置,可以确定,然后插入的几个数根据的位置前面插入的数据来决定, 用sum 数组表示改线段空位置的个数,满足 pos lt sum rt lt lt 即左儿子的空位多于插入数的位置序号 就访问左 ...
2012-07-11 18:29 0 3312 推荐指数:
刚开始看到题目,想用memmove偷懒,结果TLE,后来查了查,才发现用memmove也是O(n^2)的复杂度。。。 在网上找了AC代码,还是没怎么看懂。 就知道是逆序遍历的,线段树结点存储的是当前区域的空位置数量。 关键是update函数中的代码看的不是很懂 ...
Stars Time Limit: 1000MS Memory Limit: 65536K Total ...
E - 成段更新 Crawling in process... Crawling failed Time Limit:1000MS Memory Limit:65536KB ...
Matrix Time Limit: 3000MS Memory Limit: 65536K Tota ...
Count Color Time Limit: 1000MS Memory Limit: 65536K ...
最近一直在看胡浩的【完全版】线段树,这个题目是在他的blog介绍的 文字没有参考别人的成分 题目大意:Hotel有N(1 ≤ N ≤ 50,000)间rooms,并且所有的rooms都是连续排列在同一边,groups需要check in 房间,要求房间的编号为连续 ...
题目描述 某校大门外长度为L的马路上有一排树,每两棵相邻的树之间的间隔都是1米。我们可以把马路看成一个数轴,马路的一端在数轴0的位置,另一端在L的位置;数轴上的每个整数点,即0,1,2,……,L,都种有一棵树。 马路上有一些区域要用来建地铁,这些区域用它们在数 ...
链接http://poj.org/problem?id=2155 题目操作就是说,每次操作可以是编辑某个矩形区域,这个区域的0改为1,1改为0,每次查询只查询某一个点的值是0还是1. 方法:二维线段树,这个东东我纠结了好久才慢慢弄好。二维线段树其实就就是在第一位区间的每个节点下再建一颗线段树 ...