#P12578. [集训队互测 2024day15]括号

[集训队互测 2024day15]括号

定义一个只包括 () 的字符串 ss 为括号串,定义合法括号串如下:

  • 空串是合法括号字符串
  • 如果 AABB 都是合法括号串,那么 A+BA+B 也是合法括号串
  • 人如果 AA 是合法括号串,那么 (A)(A) 也是合法括号串

给出一个长度为 2n2n 的括号序列 ss,修改第 ii 个括号有代价 aia_iqq 次修改 aia_i 并询问将 ss 修改为合法括号串的最小代价和,修改是永久的,询问相互独立。

输入格式

第一行两个正整数 n,qn,q

接下来一行 2n2n 个非负整数 a1,,a2na_1,\ldots,a_{2n}

接下来一行一个长为 2n2n 的括号串 ss

接下来 qq 行,每行两个非负整数 i,xi,x,表示将 aia_i 修改为 xx

输出格式

输出 q+1q+1 行,顺序表示初始和进行完每次修改后的答案。

样例

样例输入 1
3 5
9 2 2 2 2 10
())(((
3 7
5 10
6 5
2 2
6 2
样例输出 1
14
14
14
9
9
6
样例输入 2
5 10
5 10 6 8 3 6 2 1 16 11
((())()(((
4 9
9 9
2 11
4 20
7 9
1 5
9 16
8 4
2 18
4 20
样例输出 2
12
12
12
12
12
12
12
12
15
15
15
样例 3~5

见下发文件。

数据范围

对于所有数据,满足 1n1051\le n\le 10^51q5×1051\le q\le 5\times 10^50ai,x1090\le a_i,x\le 10^9ss 为括号串。

  • subtask 1(15pts): n,q100n,q\le 100
  • subtask 2(10pts): n,q1000n,q\le 1000ss 在所有括号串中随机生成
  • subtask 3(10pts): n,q1000n,q\le 1000
  • subtask 4(5pts): ai=x=1a_i=x=1
  • subtask 5(25pts): q105q\le 10^5
  • subtask 6(35pts): 无特殊限制