随笔分类 -  RMQ

摘要:以下是一个基于ST表(Sparse Table)的RMQ(Range Maximum Query)问题的C++算法模板: #include<bits/stdc++.h> using namespace std; const int MAXN = 100005; const int LOGN = 20 阅读全文
posted @ 2023-12-12 14:14 CRt0729 阅读(10) 评论(0) 推荐(0) 编辑
摘要:描述 从前有个人名叫 W and N and B,他有着天才般的记忆力,他珍藏了许多许多的宝藏。在他离世之后留给后人一个难题(专门考验记忆力的啊!),如果谁能轻松回答出这个问题,便可以继承他的宝藏。 题目是这样的:给你一大串数字(编号为 1 到 N,大小可不一定哦!),在你看过一遍之后,它便消失在你 阅读全文
posted @ 2023-06-01 17:57 CRt0729 阅读(29) 评论(0) 推荐(0) 编辑
摘要:描述 Wind 设计了很多机器人。但是它们都认为自己是最强的,于是,一场比赛开始了…… 机器人们都想知道谁是最敏捷的,于是它们进行了如下一个比赛。首先,他们面前会有一排共 n 个数,它们比赛看谁能最先把每连续 k 个数中最大和最小值写下来,当然,这些机器人运算速度都很快,它们比赛的是谁写得快。 但是 阅读全文
posted @ 2023-06-01 17:08 CRt0729 阅读(44) 评论(0) 推荐(0) 编辑
摘要:RMQ 如题:作用是询问区间最大最小值问题 步骤: 1.定义 a[i]表示数列的数 lg数组是一个辅助数组,用于快速计算查询区间的长度对应的k值。具体来说,lg[i]表示以2为底,i的对数。在C++中,可以使用lg2函数来计算以2为底的对数 f[i][j]表示从a[i]到a[i+2^i-1]这个范围 阅读全文
posted @ 2023-06-01 17:06 CRt0729 阅读(41) 评论(0) 推荐(0) 编辑

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