俄罗斯方块 题解

题意:矩阵 checkmax、矩阵求 max,checkmax 的值一定比当前矩阵原 max 大

外层线段树每个节点开一棵线段树,每个点记录 列的 max 与 checkmax 的标记

checkmax 时:对路过的点的 max 更新,对完全包含的区间的 checkmax 标记更新

求 max 时:对路上的 checkmax 与完全包含的 max 更新

\((a,b)*(c,d)=(\max(a,c),\max(b,c,d))\)

解释

由于对于外层线段树的每个点,都要求这个点里面某个区间的 max 与 checkmax 的标记

所以另外开一棵内层线段树,每个点分别维护这个区间的 max 与 checkmax 的标记

于是外层的标记永久化不用说了

内层需要支持 checkmax 和查询

checkmax,即更新路上的 max,以及完全包含的 checkmax

查询,即查路上的 checkmax,以及完全包含的 max

posted @ 2024-04-20 23:08  Laijinyi  阅读(18)  评论(0编辑  收藏  举报