eolymp
bolt
Try our new interface for solving problems
Problems

Кульки

Кульки

Є $n$ кульок у рядку. На $i$-ій кульці зліва записане число $a_i$. Можна виконувати операції. За одну операцію виконується наступне: \begin{enumerate} \item Нехай $k$~--- кількість кульок. \item Видаляються усі кульки, на яких записане число $k$. \end{enumerate} Будемо вважати, що рядок кульок можна видалити, якщо після виконання певної кількості операцій, більше не буде жодної кульки. Також дано $m$ запитів, кожен з яких можна описати двома числами: $p_i$, $x_i$, які означають, що число на $p_i$-ій кульці потрібно замінити на $x_i$. Після кожного такого запиту потрібно знайти мінімальну кількість чисел, які потрібно змінити на кульках, щоб рядок можна було видалити. \InputFile Перший рядок містить два цілі числа $n$ та $m$ ($1 \leq n, m \leq 2 \cdot 10^5$). Другий рядок містить $n$ цілих чисел $a_1, a_2, \dots, a_n$ ($1 \leq a_i \leq n$). Кожен з наступних $m$ рядків містить два цілі числа $p_i$ та $x_i$ ($1 \leq p_i, x_i \leq n$). \OutputFile Виведіть $m$ чисел по одному у рядку.
Time limit 2 seconds
Memory limit 256 MiB
Input example #1
5 3
1 1 3 4 5
1 2
2 5
5 4
Output example #1
0
1
1
Input example #2
4 4
4 4 4 4
4 1
3 1
1 1
2 1
Output example #2
0
1
2
3
Input example #3
10 10
8 7 2 9 10 6 6 5 5 4
8 1
6 3
6 2
7 10
9 7
9 9
2 4
8 1
1 8
7 7
Output example #3
1
0
1
2
2
3
3
3
3
2
Author Anton Tsypko