#abc287g. [abc287_g]Balance Update Query

[abc287_g]Balance Update Query

题目描述

Takahashi 有每种 NN 种不同卡牌各 1010010^{100} 张。初始时,第 ii 种卡牌的得分和限额分别设为 aia_ibib_i

给定 QQ 个查询,按顺序处理它们,查询格式如下:

  • 1 x y:将第 xx 种卡牌的得分设为 yy
  • 2 x y:将第 xx 种卡牌的限额设为 yy
  • 3 x:如果满足以下条件可以选取 xx 张卡牌,则打印所选卡牌得分的最大可能总和;否则打印 -1
    • 每种卡牌的选择数量不超过其限额。

约束条件

  • 1leqN,Qleq2times1051 \\leq N,Q \\leq 2 \\times 10^5
  • 0leqaileq1090 \\leq a_i \\leq 10^9
  • 0leqbileq1040 \\leq b_i \\leq 10^4
  • 对于第一种查询,1leqxleqN1 \\leq x \\leq N0leqyleq1090 \\leq y \\leq 10^9
  • 对于第二种查询,1leqxleqN1 \\leq x \\leq N0leqyleq1040 \\leq y \\leq 10^4
  • 对于第三种查询,1leqxleq1091 \\leq x \\leq 10^9
  • 至少存在一个第三种查询。
  • 输入中的所有值都是整数。

输入

输入以以下格式从标准输入给出,其中 mathrmqueryi\\mathrm{query}_i 表示第 ii 个查询:

NN a1a_1 b1b_1 vdots\\vdots aNa_N bNb_N QQ mathrmquery1\\mathrm{query}_1 vdots\\vdots mathrmqueryQ\\mathrm{query}_Q

输出

输出 MM 行,其中 MM 是第三种查询的数量。
ii 行应包含对第 ii 个该类查询的响应。


示例输入 1

3
1 1
2 2
3 3
7
3 4
1 1 10
3 4
2 1 0
2 3 0
3 4
3 2

示例输出 1

11
19
-1
4

对于第一个第三种查询,可以选择一张第二种卡牌和三张第三种卡牌,总得分为 1111,为最大值。
对于第二个第三种查询,可以选择一张第一种卡牌和三张第三种卡牌,总得分为 1919,为最大值。
对于第三个第三种查询,无法选择四张卡牌,因此应打印 -1
对于第四个第三种查询,可以选择两张第二种卡牌,总得分为 44,为最大值。