QOJ.ac

QOJ

Type: Editorial

Status: Open

Posted by: jiangly

Posted at: 2025-12-14 06:54:22

Last updated: 2025-12-14 06:54:25

Back to Problem

题解

设 $B^k$ 中第 $i$($i$ 可以是负数,可以从任意一个左括号开始编号)个左括号的位置为 $p(k,i)$,那么 $p(k+1,i)=\min\{p(k,i)+1,p(k,i+1)-1\}$,所以 $p(k,i)=\max_{i\le j\le i+k}\{p(0,j)+k-2(j-i)\}$,于是可以用 RMQ 在 $O(1)$ 的时间求出任意的 $p(k,i)$。

查询区间的左括号个数,只需要二分出左括号的下标区间即可。

Comments

No comments yet.