AT_arc168_f [ARC168F] Up-Down Queries

题目描述

给定一个长度为 $N$ 的整数序列 $x=(x_1,x_2,\cdots,x_N)$,其中每个元素满足 $0 \leq x_i \leq M$,定义 $f(x)$ 如下: - 准备一个长度为 $M$ 的整数序列 $y=(y_1,y_2,\cdots,y_M)$。初始时,$y$ 的所有元素均为 $0$。然后,依次对每个 $i=1,2,\cdots,N$,按顺序进行如下操作: - 对于每个整数 $j$($1 \leq j \leq x_i$),将 $y_j$ 的值替换为 $\max(y_j-1,0)$。 - 对于每个整数 $j$($x_i < j \leq M$),将 $y_j$ 的值替换为 $y_j+1$。 - 所有操作结束后,$y$ 的所有元素之和即为 $f(x)$ 的值。 现给定一个长度为 $N$ 的整数序列 $A=(A_1,A_2,\cdots,A_N)$,其中每个元素满足 $0 \leq A_i \leq M$。请处理 $Q$ 个查询。 - 第 $i$ 个查询:给定整数 $X_i,Y_i$,将 $A_{X_i}$ 的值替换为 $Y_i$,然后输出 $f(A)$ 的值。

输入格式

输入按以下格式从标准输入读入: > $N$ $M$ $Q$ > $A_1$ $A_2$ $\cdots$ $A_N$ > $X_1$ $Y_1$ > $X_2$ $Y_2$ > $\vdots$ > $X_Q$ $Y_Q$

输出格式

请输出每次查询后的答案。

说明/提示

### 数据范围 - $1 \leq N, M, Q \leq 250000$ - $0 \leq A_i \leq M$ - $1 \leq X_i \leq N$ - $0 \leq Y_i \leq M$ - 输入的所有值均为整数。 ### 样例解释 1 首先考虑第 $1$ 个查询。将 $A_1$ 的值替换为 $4$,此时 $A=(4,2,3)$。然后,$f(A)$ 的值按如下方式计算: - 准备 $y=(0,0,0,0)$。 - 对 $A_1=4$ 进行操作后,$y=(0,0,0,0)$。 - 对 $A_2=2$ 进行操作后,$y=(0,0,1,1)$。 - 对 $A_3=3$ 进行操作后,$y=(0,0,0,2)$。 - $y$ 的元素之和 $=2$,即为 $f(A)$ 的值。 接着考虑第 $2$ 个查询。将 $A_3$ 的值替换为 $0$,此时 $A=(4,2,0)$。然后,$f(A)$ 的值按如下方式计算: - 准备 $y=(0,0,0,0)$。 - 对 $A_1=4$ 进行操作后,$y=(0,0,0,0)$。 - 对 $A_2=2$ 进行操作后,$y=(0,0,1,1)$。 - 对 $A_3=0$ 进行操作后,$y=(1,1,2,2)$。 - $y$ 的元素之和 $=6$,即为 $f(A)$ 的值。 由 ChatGPT 4.1 翻译