P12194 [NOISG 2025 Prelim] Snacks

题目描述

Shor 小鸭已经准备了 $n$ 个小吃盘子,准备一边看电影一边享用!第 $i$ 个盘子最初装有一个美味值为 $a[i]$ 的小吃。 你需要处理 $q$ 个查询。在第 $j$ 个查询中,Shor 将按顺序执行以下两个操作: 1. 吃掉所有美味值在 $l[j]$ 到 $r[j]$(包含)之间的小吃。 2. 然后,将每一个被吃掉的小吃替换为一个美味值为 $x[j]$ 的新小吃。 在处理任何查询之前,以及每次处理完查询之后,Shor 都希望你确定所有盘子中小吃的美味值总和。 形式化地说,给定一个长度为 $n$ 的数组 $a$,你必须处理 $q$ 个查询。在处理所有查询之前,打印 $a$ 中所有元素的总和。在第 $j$ 个查询中,将所有满足 $l[j] \leq a[i] \leq r[j]$ 的元素 $a[i]$ 更新为 $x[j]$,然后打印更新后的 $a$ 中所有元素的总和。

输入格式

输出格式

说明/提示

### 子任务 对于所有测试用例,输入将满足以下约束条件: - $1 \leq n \leq 200\,000$ - $0 \leq q \leq 200\,000$ - $0 \leq a[i] \leq 10^9$ 对于所有 $1 \leq i \leq n$ - $0 \leq x[j] \leq 10^9$ 对于所有 $1 \leq j \leq q$ - $0 \leq l[j] \leq r[j] \leq 10^9$ 对于所有 $1 \leq j \leq q$ 你的程序将在满足以下特殊性质的输入数据上进行测试: | 子任务 | 分值 | 特殊性质 | | :-: | :-: | :-: | | $0$ | $0$ | 样例 | | $1$ | $5$ | $q = 0$ | | $2$ | $12$ | $n, q \leq 2000$ | | $3$ | $21$ | $l[j] = r[j] \leq 200\,000$ 且 $a[i], x[j] \leq 200\,000$ | | $4$ | $13$ | $l[j] = r[j]$ | | $5$ | $16$ | $x[j] = 0$ | | $6$ | $33$ | 无 | ### 样例 1 解释 此样例适用于子任务 $2, 3, 4, 6$。 ### 样例 2 解释 此样例适用于子任务 $2, 5, 6$。 ### 样例 3 解释 此样例适用于子任务 $2, 6$。 在所有查询之前,数组 $a$ 为 $[7, 72, 727, 123, 321, 9]$,总和为 $1259$。 第一次查询后,数组 $a$ 变为 $[10, 72, 727, 123, 321, 10]$,总和为 $1263$。 第二次查询后,数组 $a$ 变为 $[727, 727, 727, 123, 321, 727]$,总和为 $3352$。 第三次查询后,数组 $a$ 变为 $[727, 727, 727, 30, 321, 727]$,总和为 $3259$。 第四次查询后,数组 $a$ 变为 $[99, 99, 99, 30, 99, 99]$,总和为 $525$。 第五次查询后,数组 $a$ 变为 $[99, 99, 99, 30, 99, 99]$,总和为 $525$。