B4161 [BCSP-X 2024 12 月小学高年级组] 操作序列
题目描述
有 $n$ 个变量 $x[1 \sim n]$,初始值都为 0。
依次给出 $m$ 个操作的信息,操作分为 2 种:
- $(1, id, v)$: 代表将 $x[id]$ 的值加上 $v$;
- $2$: 代表将所有变量的值乘 $2$;
所有运算在 $(\bmod \ 10^4)$ 下执行,提示:模意义下的加减乘运算
- 加:`c = (a + b) % mod`;
- 减:`c = (a - b + mod) % mod`;
- 乘:`c = a * b % mod`;
现在给出一个操作序列,请问依次执行序列中的所有操作之后,每个变量的值是多少。
具体的,操作序列以 $q$ 个区间 $[l[i], r[i]]$ 的形式给出,依次执行每个区间、每个区间按编号从小->大执行区间内的操作,即完整的操作序列为:
- $l[1] \sim r[1], l[2] \sim r[2], l[3] \sim r[3], \ldots, l[q] \sim r[q]$
输入格式
第一行 $3$ 个整数 $n, m, q$,代表变量数量,操作数量,操作序列中区间数量。
接下来 $m$ 行,每行 $3$ 个整数 $op, id, v$ 或者 $1$ 个整数 $op$,给出所有操作的信息。
接下来 $q$ 行,每行 $2$ 个整数 $l[i], r[i]$ 代表一个操作区间。
输出格式
输出一行 $n$ 个整数,代表所有操作执行完之后每个变量的值。
说明/提示
### 样例 3-8
见附件。
### 数据范围
对于所有数据,$1 \leq n, m, q \leq 2 \times 10^5, op = \{1, 2\}, 1 \leq id \leq n, 1 \leq v \leq 10^9$,假设 $m$ 种操作中第 1、2 种操作的总数为 $m_1, m_2$,满足 $m_1 + m_2 = m$。
本题采用捆绑测试,你必须通过子任务中的所有数据点以及其依赖的子任务,才能获得子任务对应的分数。
| 子任务编号 | 分值 | 数据范围 | 特殊性质 | 子任务依赖 |
|:------------:|:------:|:----------:|:----------:|:------------:|
| 1 | 15 | $n, m, q \leq 500$ | | |
| 2 | 19 | $n, m, q \leq 5000$ | | 1 |
| 3 | 11 | $n, m, q \leq 2 \times 10^5$ | $m_2 = 0$ | |
| 4 | 17 | $n, m, q \leq 2 \times 10^5$ | $m_1 = 1, m_2 = m - 1$ | |
| 5 | 17 | $n, m, q \leq 2 \times 10^5$ | $m_1 = m - 1, m_2 = 1$ | |
| 6 | 21 | $n, m, q \leq 2 \times 10^5$ | | 1,2,3,4,5 |