P8765 [蓝桥杯 2021 国 AB] 翻转括号序列
题目描述
给定一个长度为 $n$ 的括号序列,要求支持两种操作:
1. 将 $\left[L_{i}, R_{i}\right]$ 区间内(序列中的第 $L_{i}$ 个字符到第 $R_{i}$ 个字符)的括号全部翻转(左括号变成右括号,右括号变成左括号)。
2. 求出以 $L_{i}$ 为左端点时,最长的合法括号序列对应的 $R_{i}$ (即找出最大的 $R_{i}$ 使 $\left[L_{i}, R_{i}\right]$ 是一个合法括号序列)。
输入格式
输入的第一行包含两个整数 $n, m$,分别表示括号序列长度和操作次数。
第二行包含给定的括号序列,括号序列中只包含左括号和右括号。
接下来 $m$ 行,每行描述一个操作。如果该行为 `1 L R`, 表示第一种操作,区间为 $\left[L, R\right]$;如果该行为 `2 L` 表示第二种操作,左端点为 $L$ 。
输出格式
对于每个第二种操作,输出一行,表示对应的 $R_{i}$。如果不存在这样的 $R_{i}$,请输出 $0$ 。
说明/提示
对于 $20 \%$ 的评测用例,$n, m \leq 5000$;
对于 $40 \%$ 的评测用例,$n, m \leq 30000$;
对于 $60 \%$ 的评测用例,$n, m \leq 100000$;
对于所有评测用例,$1 \leq n \leq 10^{6}, 1 \leq m \leq 2 \times 10^{5}$ 。
蓝桥杯 2021 国赛 A 组 H 题(B 组 I 题)。