处理块内查询时,A'数组和B数组的处理时间复杂度为O(N)。预处理后,块内查询可在O(1)时间内完成,块间查询则分解为块内查询和RMQ,总复杂度也是O(1)。总结,我们设计了一个预处理时间O(n)、查询时间O(1)的在线RMQ算法,通过有效地管理右链和块内/块间查询,实现了高效的查询性能。
RMQ标准算法,利用了神奇的数据结构--笛卡尔树,笛卡尔树将区间最值问题转化为树上两个点的LCA问题,而DFS可以将LCA问题转化为±1RMQ问题,±1RMQ问题又可以利用分块和动态规划的思想来解决。上述所有预处理,包括笛卡尔树的建立、DFS序以及±1RMQ的问题的求解都可以在线性时间内完成,查询时复杂度为O(1)。 标准算法的...