A2914 | 无聊的数列
时间限制1s
内存限制128MB
通过 / 提交0/0
题目描述
无聊的 YYB 总喜欢搞出一些正常人无法搞出的东西。有一天,无聊的 YYB 想出了一道无聊的题:无聊的数列。
维护一个数列 $a_i$,支持两种操作:
-
-
维护一个数列 $a_i$,支持两种操作:
-
1 l r K D:给出一个长度等于 $r-l+1$ 的等差数列,首项为 $K$,公差为 $D$,并将它对应加到 $[l,r]$ 范围中的每一个数上。即:令 $a_l=a_l+K,a_{l+1}=a_{l+1}+K+D\ldots a_r=a_r+K+(r-l) \times D$。-
2 p:询问序列的第 $p$ 个数的值 $a_p$。输入格式
第一行两个整数数 $n,m$ 表示数列长度和操作个数。
第二行 $n$ 个整数,第 $i$ 个数表示 $a_i$。
接下来的 $m$ 行,每行先输入一个整数 $opt$。
若 $opt=1$ 则再输入四个整数 $l\ r\ K\ D$;
若 $opt=2$ 则再输入一个整数 $p$。
第二行 $n$ 个整数,第 $i$ 个数表示 $a_i$。
接下来的 $m$ 行,每行先输入一个整数 $opt$。
若 $opt=1$ 则再输入四个整数 $l\ r\ K\ D$;
若 $opt=2$ 则再输入一个整数 $p$。
输出格式
对于每个询问,一行一个整数表示答案。
输入输出样例
输入 #1
5 2 1 2 3 4 5 1 2 4 1 2 2 3
输出 #1
6
#### 数据规模与约定
对于 $100\%$ 数据,$0\le n,m \le 10^5,-200\le a_i,K,D\le 200, 1 \leq l \leq r \leq n, 1 \leq p \leq n$。
对于 $100\%$ 数据,$0\le n,m \le 10^5,-200\le a_i,K,D\le 200, 1 \leq l \leq r \leq n, 1 \leq p \leq n$。
C++ 编辑器
输入
输出
可保存默认模板;新题优先使用已保存模板。
当前快捷键仅展示,暂不支持修改。
- 撤销
Ctrl / ⌘ + Z - 重做
Ctrl / ⌘ + Y - 查找
Ctrl / ⌘ + F - 全选
Ctrl / ⌘ + A - 复制
Ctrl / ⌘ + C - 剪切
Ctrl / ⌘ + X - 粘贴
Ctrl / ⌘ + V - 自动排版
工具栏排版按钮 - 草稿保存
编辑时自动保存到本机
历史
提交记录
状态说明时间源码
AI
作答助手
你好,我是作答助手。可以问思路、复杂度、样例含义或代码报错原因;不会直接给出完整 AC 代码。
确定要清空代码吗?