编程题
### 问题描述
野兽先辈有一家公司,该公司有 $n$ 名员工,每个员工都有特定的工资。他的任务是跟踪工资并处理查询。
### 输入格式
第一行包含两个整数 $n$ 和 $q$,表示员工数量和查询数量。员工编号为 $1, 2, \dots, n$。
接下来一行有 $n$ 个整数 $p_1, p_2, \dots, p_n$,表示每个员工的工资。
之后,有 $q$ 行描述查询。每行有以下形式之一:
- $!$ $k$ $x$:将员工 $k$ 的工资更改为 $x$。
- $?$ $a$ $b$: 统计工资在 $a$ 到 $b$ 之间的员工数量。
### 输出格式
对于每个 $?$ 查询,输出答案。
### 样例输入
```
5 3
3 7 2 2 5
? 2 3
! 3 6
? 2 3
```
### 样例输出
```
3
2
```
### 评测数据规模
$1 \leq n, q \leq 10^5$,$1 \leq p_i \leq 10^9$,$1 \leq k \leq n$,$1 \leq x \leq 10^9$,$1 \leq a \leq b \leq 10^9$。