RMQ问题——ST表算法
# ST 表是什么 ST 表是一个用来解决区间最值问题查询的算法 它用 O (nlogn) 复杂度预处理,可以实现 O (1) 复杂度的查询。 缺点:无法支持在线修改 模板题:ST 表 - 洛谷 # 1. 预处理 用一个二维数组 dp [i][j] 表示下标为 i ~ i + 2j - 1 的最值(最大 or 最小值) 则 ①易知边界条件 dp [i][0] 为 a [i],既 i~i 的最大值为其本身 ②接下来是状态转移方程,如图 # 1 << j 相当于 2j 初始化代码 void init(int n) { for (int i = 0;...
more...