CSES Problem Set

# Salaries

CSES - Salaries

 Time limit: 1.00 s Memory limit: 512 MB

A company has $n$ employees with certain salaries. Your task is to keep track of the salaries and process queries.

Input

The first input line contains two integers $n$ and $q$: the number of employees and queries. The employees are numbered $1,2,\ldots,n$.

The next line has $n$ integers $p_1,p_2,\ldots,p_n$: each employee's salary.

After this, there are $q$ lines that describe the queries. Each line has one of the following forms:
• ! $k$ $x$: change the salary of employee $k$ to $x$
• ? $a$ $b$: count the number of employees whose salary is between $a \ldots b$
Output

Print the answer to each ? query.

Constraints
• $1 \le n, q \le 2 \cdot 10^5$
• $1 \le p_i \le 10^9$
• $1 \le k \le n$
• $1 \le x \le 10^9$
• $1 \le a \le b \le 10^9$
Example

Input:
5 3 3 7 2 2 5 ? 2 3 ! 3 6 ? 2 3

Output:
3 2