
【数据结构】--线段树
文章平均质量分 54
起风了_唯有努力生存
继续加油
展开
-
nyoj1115-士兵杀敌(二)(线段树单点更新,区间求和)
题目来源:http://acm.nyist.me/OJ/pid=1115题意中文题意,。思路学完了数据结构的树这一节,对区间这种问题有了一定的了解,自己手打。。。这应该算是模板。。。代码#include<stdio.h>#include<string.h>#include<algorithm>using namespace std;const int maxn=1000000;int tr原创 2017-10-18 21:47:31 · 324 阅读 · 0 评论 -
nyoj119-士兵杀敌(三)(线段树,最大最小值)
题目来源:http://acm.nyist/problem.php?pid=119题意中文题意。。。思路利用二叉堆的特点,写二叉搜索树(线段树),但貌似耗时比RMQ长。 并且还超时了几发,对比了两次的代码,发现只是query里多定义了一个变量,而已。。。导致超时。代码#include<stdio.h>#include<string.h>#include<algorithm>using nam原创 2017-10-19 13:45:26 · 214 阅读 · 0 评论 -
nyoj1122-士兵杀敌(四)
题目来源:http://acm.nyist.melem.php?pid=1122题意中问题意。。。思路貌似是延迟标记,,,自己手打,,,并没有什么模板。。。 解释下延迟标记,如果单点更新会的话,就会知道一个节点更新需要O(logn)的时间,如果是一个区间更新,如果还是每次每个节点都更新,最坏的时间复杂度是O(n*nlogn),那么就会不那么理想。 这里,好比样例1,我要更新1-3,那么我开始遍历原创 2017-10-20 11:06:12 · 216 阅读 · 0 评论 -
poj2528-Mayor's posters(线段树,区间,离散化)
题目来源:http://poj.org/problem?id=2528题意在足够的矩形图形上贴海报,给出每张海报的左右边界,另外,海报之间相互覆盖,问,最后还能看到多少张海报。(看见一点就可以认为符合要求)思路线段树进行延迟标记,最后一遍递归遍历最后的节点的标记,记录下所有标记得种类数目。 用到的技巧: 离散化。 这里的离散化比较特殊,请看(借用大佬的样例): 1~10 1~3 7~10原创 2017-11-07 20:14:33 · 213 阅读 · 0 评论 -
poj2828-Buy Tickets(线段树,单点更新)
题目来源:http://poj.org/problem?id=2828题意一群人在排队,,,天依旧黑着,,所以每个人都想插队,。,(反正天黑也瞅不见,。机智boy)。。完了之后输出最后的队列就好。,,。。思路越往后的插队得位置越接近最终的状态,那么按照样例: 1 77 2 51 2 33 3 69 前面的位置都加上了1,代表他前面有几个空位置,那么先插入倒数第一个。。插入完成后是这:(空格原创 2017-11-08 13:36:44 · 255 阅读 · 0 评论 -
poj-2481 Cows(线段树,思路)
题目来源:http://poj.org/problem?id=2481题意在一个农场里,有n头牛,每头牛呢,喜欢吃一定范围的草,把范围看成一条直线,那么给出n头牛各自的区间。 然后,农场主给出了一个定义,强牛与弱牛(想对来说),Given two cows: cowi and cowj, their favourite clover range is [Si, Ei] and [Sj, Ej].原创 2017-11-10 16:44:20 · 303 阅读 · 0 评论 -
poj1151-Atlantis(线段树+扫描线(经典题))
题目来源:http://poj.org/problem?id=1151题意在二维坐标系上,给出多个矩形的左下以及右上坐标,求出所有矩形构成的图形的面积。思路第一次接触扫描线。。。(弱) 好吧,我承认我会了。。。 咳咳,,推荐另外一道题(进行扫描线入门),做完这道题就会知道,一个区间的左端点是1,右端点是-1,那么就不用考虑那么多复杂的情况了。 相应的,在这道题里,假设以和x轴平行的作为扫描线,原创 2017-11-03 15:14:18 · 1945 阅读 · 0 评论