AT_abc425_c [ABC425C] Rotate and Sum Query

题目描述

给你一个长度为 $N$ 的整数序列 $A=(A_1,A_2,\ldots,A_N)$。 现在需要按顺序处理 $Q$ 个查询。查询有两种类型,格式如下: - `1 c`:将序列 $A$ 的第一个元素移动到序列末尾,重复 $c$ 次。 - `2 l r`:输出 $\displaystyle \sum_{i=l}^r A_i$ 的值。

输入格式

输入从标准输入给出,格式如下: > $N$ $Q$ $A_1$ $A_2$ $\ldots$ $A_N$ $\text{query}_1$ $\text{query}_2$ > $\vdots$ > $\text{query}_Q$ 每个查询 $\text{query}_i$ 有如下两种格式之一: > $1$ $c$ > $2$ $l$ $r$

输出格式

对于每个第二种类型的查询,按照出现顺序输出查询结果,每个结果占一行。

说明/提示

### 样例说明 1 对每个查询的处理如下: - 第一个查询:$A_1+A_2+A_3=3+1+4=8$,输出 $8$。 - 第二个查询:$A=(3,1,4,5)$ 变为 $A=(1,4,5,3)$。 - 第三个查询:$A_2+A_3=4+5=9$,输出 $9$。 ### 数据范围 - $1\le N\le 2\times 10^5$ - $1\le Q\le 2\times 10^5$ - $1\le A_i \le 10^9$ - $1\le c\le N$ - $1\le l\le r \le N$ - 至少存在一次第二种类型的查询。 - 所有输入均为整数。 由 ChatGPT 5 翻译