![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
线段树
文章平均质量分 80
冷月残星
这个作者很懒,什么都没留下…
展开
-
线段树,分治法(动态最大连续和,LA 3938)
长代码找手误真的难= =。很容易脑补成对的,然后就混过去了。其实不应该贪快嫌麻烦,一定要想清楚。 线段树维护:区间左坐标,区间右坐标,区间和,最大连续和,最大连续和左坐标,最大连续和右坐标,最大前缀和,最大前缀和右坐标,最大后缀和,最大后缀和左坐标。 如果区间和相等,都是在保证左坐标最小的情况下,右坐标最小。 可以证明当区间和相等时,选择右边>左+右>选择左边。原创 2016-12-11 14:40:56 · 644 阅读 · 0 评论 -
线段树(Fast Matrix Operations,UVA 11992)
我真的是写线段树写懵逼了。 开始出现成吨低级错误。 代码 #include #define m ((l+r)>>1) #define ls (now<<1) #define rs (ls|1) #define maxn 1000010 #define mem(a) memset(a,0,sizeof(a)) using namespace std; int R,C,M; int o原创 2016-12-12 17:15:31 · 240 阅读 · 0 评论 -
置换,模拟,优化(HDU 5338,ZZX and Permutations)
理解置换的概念以及题意后,剩下的就是模拟了。 花了挺长时间,主要是模拟有漏洞+想暴力过。 希望自己能养成一个做题目的好习惯,虽然写完代码再来debug能比较稳定地查出错误,但是一旦出现了整体性的解法错误就得推倒重来,这会花掉非常多的时间,希望自己能权衡一下写代码和想明白之间的时间分配,任何基本功都是值得坚持训练的。 代码 #include #include #define原创 2017-06-07 10:27:08 · 286 阅读 · 0 评论 -
线段树,数据结构,RMQ,分治法,最大和(Magician,HDU 5316)
题目链接: https://vjudge.net/problem/HDU-5316 首先题目描述有问题,subsequence显然应该可以是空串,但是如果算上空串就错,不算就对。 然后就是很经典的题目了。 想起了静态和动态的连续最大和问题,静态就不说了,详见紫书P220~PP224。 动态连续最大和例题:"Ray, Pass me the dishes!" 题原创 2017-06-08 15:37:35 · 442 阅读 · 0 评论 -
线段树,区间开方(Rikka with Sequence,HDU 5828)
题目链接:https://vjudge.net/problem/HDU-5828 参考博客: http://www.cnblogs.com/forever97/p/hdu5828.html http://blog.csdn.net/zzz805/article/details/52193127 区间开方不好维护,但是多次开方后区间极差会快速降低到小于等于1。 我们在区间极差大于1原创 2017-07-25 22:07:37 · 476 阅读 · 0 评论