1782. 动态排名

给定一个含有 $n$ 个数的序列 $a_1,a_2 \dots a_n$,需要支持两种操作:

  • Q l r k 表示查询下标在区间 $[l,r]$ 中的第 $k$ 小的数。
  • C x y 表示将 $a_x$ 改为 $y$。

输入格式

第一行两个正整数 $n,m$,表示序列长度与操作个数。

第二行 $n$ 个整数,表示 $a_1,a_2 \dots a_n$。

接下来 $m$ 行,每行表示一个操作,都为上述两种操作中的一个。

输出格式

对于每一次询问,输出一行一个整数表示答案。

数据范围

$1\le n,m \le 10^5$,
$1 \le l \le r \le n$,
$1 \le k \le r-l+1$,
$1 \le x \le n$,
$0 \le a_i,y \le 10^9$

输入样例:

5 3
3 2 1 4 7
Q 1 4 3
C 2 6
Q 2 5 3

输出样例:

3
6