随笔分类 - ACM——线段树
摘要:士兵杀敌(1): http://acm.nyist.net/JudgeOnline/problem.php?pid=108 分析:前缀和 1 2 #include <bits/stdc++.h> 3 4 using namespace std; 5 6 int a[1000005]; 7 int s
阅读全文
摘要:线段树就像一句话: 听过很多道理,却依然过不好这一生。 ε(┬┬﹏┬┬)3 还是总结一下线段树的知识点。网上有很多模板,其中最突出的就不用说了,《线段树完全版》主要是没怎么学,没怎么去了解那个大佬的风格。 这里我记录一下刘汝佳大牛的板子。 未完。。。 之前一直对刘汝佳的线段树信心不大。是因为刘汝佳的
阅读全文
摘要:题目链接:https://vjudge.net/contest/147973#problem/C 题意:传统的RMQ是一个不变的数组a求区间最值。现在要循环移动(往前移动)。 分析:求区间问题,很容易想到线段树,移动就相当于单点更新。 建树,有两种方案,第一种是nlogn,就是不断的更新,更新log
阅读全文
摘要:题目链接:https://vjudge.net/contest/146667#problem/C 题意:动态的求一个区间的最大连续和。 分析: 看上去可以RMQ去做,但是,当分成两个部分,原来的部分的解可能是跨越这两个区间的。原问题的解不能通过RMQ分成的两个部分的解而得到。 线段树: 线段树很早之
阅读全文
摘要:Problem G: Parenthesis Description Bobo has a balanced parenthesis sequence P=p1 p2…pn of length n and q questions. The i-th question is whether P rem
阅读全文
摘要:题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1698 区间更新重点在于懒惰标记。 当你更新的区间就是整个区间的时候,直接sum[rt] = c*(r-l+1);col[rt] = c;后面的子区间就不管了,当你下次更新某一个区间的时候,把col[rt
阅读全文
摘要:题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1754 线段树模板题,update功能是单点替换,query是访问区间最大值。
阅读全文
摘要:题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1166 第一次做线段树,帆哥的一句话,我记下来了,其实,线段树就是一种处理数据查询和更新的手段。 然后,我的代码风格,是网上的大牛们的辛苦总结,我就套用了。这里,我还是简单说一下线段树,说的不好,主要方便
阅读全文