随笔分类 -  数据结构 RMQ

摘要:题目链接 很明显的求区间最大最小值问题,可以用st表做,不过ccz 大爷教我用zkw线段树来解决这种问题,感觉很好用>< 对于1~n的序列,我们先转化成0~n-1,(方便之后的xor),然后求一个最小的mx=(1<<i)使得mx>=n,这样就保证了是一棵满二叉树,叶子结点为0~mx-1。 然后考虑对 阅读全文
posted @ 2017-09-10 12:28 Child-Single 阅读(288) 评论(0) 推荐(0)
摘要:没学ST之前肯定是用线段树什么的写,不过如果把它看作一个RMQ问题代码量突然就降了下来。 ST算法可以实现O(NlogN)预处理,O(1)时间查询。 蓝书上说的是开三个num,left和right数组存该位置所在段的编号和左右端点位置,其实没有必要,只要从l向右走到第一次出现的数字(即第t位)那里( 阅读全文
posted @ 2017-06-13 20:43 Child-Single 阅读(160) 评论(0) 推荐(0)