编程题
### 问题描述
Lentty 最喜欢做的事情就是吃巧克力,经常幻想拥有吃不完的巧克力,作为一个 acmer,kane 出了个问题准备考考她,如果回答出来,那巧克力自然是源源不断的啦。
kane 给出了一列排好的的巧克力,有的是德芙,有的是费列罗,它们都拥有不同的美味值...。
现在 kane 通过魔法更改了这些巧克力,lentty 必须能指出排列中第 K 个是巧克力的美味值是多少和某一段巧克力中最美味的值是多少,才能吃到巧克力,否则,哼哼,就去乖乖的做题吧。
现在,lentty 来寻求你的帮助,你能让 poor lentty 吃上巧克力吗?
### 输入格式
有不超过 $5$ 组输入数据,每组数据以四个整数 $N,M(1\le N,M\le 10^5)$,$N$ 代表初始的巧克力数目,$M$ 代表操作数。
第一行给定 $n$,第二行含有 $n$ 个正整数,代表每块巧克力的美味值 $w_i(1\le w_i\le 5000)$,每块巧克力的下标从 $0\sim n-1$,操作分 $4$ 种。
`Query x y` 代表查询某一个区间内的美味最大值,`Ask x` 代表查询某一块巧克力的美味值,`Change x y` 代表将第 $x$ 块的美味值变成 $y$,`Add x y` 代表讲从第 $x$ 块到第 $y$ 块巧克力的美味值分别增加 $1$。
### 输出格式
对于每一个 `Query` 输出一个整数,代表区间内的美味最大值,对于每一个 `Ask` 输出一个整数,代表这块巧克力的美味值。
### 输入样例
```txt
10 4
1 2 3 4 5 6 7 8 9 10
Ask 0
Change 0 1
Add 0 2
Query 0 2
```
### 输出样例
```txt
1
4
```