摘要: 题目链接:Fountain 很不错的基础算法组合题:单调栈+倍增 首先考虑到一个事实,就是下面第一个比当前半径大的位置会成为移动的第一次落脚点,抽象下就是下面出现的第一次比自身大的半径,这个问题显然可以单调栈轻松解决。 第二个点就是我们知道了单次移动的第一个位置,现在问你多次移动到的位置,并且还要保 阅读全文
posted @ 2024-01-17 16:47 Athanasy 阅读(31) 评论(0) 推荐(0) 编辑
摘要: 题目链接:Atcoder 或者 洛谷 对于解决二维区间内的最值类型问题,我们常常有一类特别好用的方法,就是悬线法,它可以看做是单调栈的子集,但更加好理解和书写。 对于悬线法,我们有一个常见的模型,找出面积最大的符合题意的最大的矩形: 例题 P4147 玉蟾宫。对于悬线法而言,我们需要理解什么是悬线: 阅读全文
posted @ 2024-01-17 14:27 Athanasy 阅读(32) 评论(0) 推荐(0) 编辑
摘要: 题目链接:理想的正方形 比较明显的,我们可以用二维 ST 表解决,具体的二维 ST 表的实现,只需要知道一点: 对于 \(st[i][j][t]=max(i \sim i+2^t,j \sim j+2^t)\),表示的是如图所示的大正方形范围内的最值,它可以拆成从四个小正方形的左端点走 \(2^{t 阅读全文
posted @ 2024-01-17 10:41 Athanasy 阅读(25) 评论(0) 推荐(0) 编辑