随笔分类 -  线段树

摘要:思路:根据sincos的运算来做。我们有: sin(a+b)=sin(a)cos(b)+sin(b)cos(a) cos(a+b)=cos(a)cos(b)sin(a)sin(b) 所以线段树维护每个节点的sin,\(co 阅读全文
posted @ 2021-10-11 17:16 xiaodangao 阅读(54) 评论(0) 推荐(0) 编辑
摘要:题目链接:Gorgeous Sequence 思路:本题用普通线段树完成不了将区间内的大于k的数都等于k的操作,但吉老师线段树可以。我们需要维护的东西有:最大值,次大值,最大值的数量,区间和。对于每一次modify操作,我们分类讨论(为了讨论方便,我们将当前修改的值设为k,当前区间最大值设为ma 阅读全文
posted @ 2021-06-16 21:39 xiaodangao 阅读(124) 评论(0) 推荐(0) 编辑
摘要:链接:L3-017 森森快递 题意:略 思路:本来想的是dfs来做,不过最后做假了,最后一想想起来一个贪心的做法,我们必须让它的范围尽可能的小,因为他只有范围尽可能的小,才能够尽量不影响别的区间,所以我按区间范围从小到大排序,再用线段树来做,成功WA在最后一个点上,正确做法是贪心,**是根据区间右端 阅读全文
posted @ 2021-04-19 17:44 xiaodangao 阅读(644) 评论(0) 推荐(0) 编辑
摘要:堆栈是一种经典的后进先出的线性结构,相关的操作主要有“入栈”(在堆栈顶插入一个元素)和“出栈”(将栈顶元素返回并从堆栈中删除)。本题要求你实现另一个附加的操作:“取中值”——即返回所有堆栈中元素键值的中值。给定 N 个元素,如果 N 是偶数,则中值定义为第 N/2 小元;若是奇数,则为第 (N+1) 阅读全文
posted @ 2020-11-26 16:21 xiaodangao 阅读(428) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示