#L6186. Attack

Attack

题目描述

『新的风暴已经出现,怎么能够停滞不前』—— 你决定去攻击小怪兽的巢穴。

怪兽有一行 nn 个巢穴,从 11nn 编号,第 ii 个巢穴的防御力为 RiR_i

一开始你在降生在第 xx 个巢穴(此时巢穴 xx 已被破坏),攻击力为 RxR_x

每次你有三种操作:

  1. 攻击你左边的第一个没有被摧毁的巢穴,要求你的攻击力要大于等于它的防御力。
  2. 攻击你右边的第一个没有被摧毁的巢穴,要求你的攻击力要大于等于它的防御力。
  3. 增加你的攻击力,这会占用你 kk 次操作,你的攻击力会变成两边第一个没有被摧毁的巢穴防御力的较小值(不存在算作 \infty)。

ExE_x 等于你出生在 xx 的时候,捣毁所有巢穴需要的最少次数。

现在有 qq 个操作,每次为以下两种之一:

  • 交换巢穴 xxx+1x + 1
  • 给出两个数字 xxyy,求 i=xyEi\sum_{i=x}^y E_i 的值。

输入格式

第一行两个整数 nnkk

第二行 nn 个整数,表示 RiR_i

之后若干行(qq 行,直至文件末尾),开始一个数 op\mathrm{op} 表示操作类型。

如果 op=1\mathrm{op} = 1,接下来一个数 xx
否则 op=2\mathrm{op} = 2,接下来两个数字 xxyy。参数含义均与题目描述中相同。


输出格式

对于每个 op=2\mathrm{op} = 2 的操作输出一行,包含一个整数表示答案。


样例

输入

5 3
2 3 1 4 1
2 2 2
2 1 5
1 2
2 2 2
2 1 5

输出

7
38
13
41

数据范围与提示

  • 20%20\% 的分数满足 n1000,q2000n \leq 1000, q \leq 2000
  • 另外 20%20\% 的分数满足没有操作 1。
  • 另外 30%30\% 的分数满足 RiR_i 两两不同。
  • 100%100\% 的分数满足 $n \leq 10^5, k \leq 10^6, R_i \leq 10^9, q \leq 2 \times 10^5, x < n$。